Passing SOAP messages with attachments through the service integration bus
The service integration technologies support web services that use a SOAP binding to pass attachments in a MIME message.
See the restrictions detailed in Limitations in the support for SOAP with attachments.
The service integration bus supports SOAP messages containing either old-style attachments (as described in the SOAP Messages with Attachments W3C Note) or attachments that use the Web Services-Interoperability (WS-I) Attachments Profile Version 1.0 (subject to the Limitations in the support for SOAP with attachments).
Attachments are carried through the service integration bus and passed to the inbound or outbound service. The content MIME type of each attachment is preserved. When the external target service for an outbound service is deployed to a Java API for XML-based Remote Procedure Call (JAX-RPC) compliant server, we can access the attachments on the target service using the javax.activation.DataHandler handler.
If the bus receives a message containing attachments, and the bus subsequently rewrites the message, then the generated message uses the same attachment style as the received message. To transform attachments from one style to another, we can use a mediation to modify the message.
For more information, see the following topics:
- SOAP Messages with Attachments: WSDL examples
- Support bound attachments: WSDL examples
- Locating an attachment by using swaref
- Writing a mediation that maps between attachment encoding styles