Restrictions for other SOAP pipelines

Enabling the MTOM handler in the pipeline means that you can support web service implementations that use the MTOM/XOP optimization. The compatibility mode option means that you can interoperate with these web services without needing to change your web service applications. However, there are certain situations where you cannot use MTOM/XOP or its use is restricted.

Using the CICS® web services assistant
The direct mode optimization for MTOM/XOP is only available if you are using DFHWS2LS at a mapping level of at least 1.2, and the WSDL document contains at least one field of type xsd:base64Binary. Web services that are enabled using DFHLS2WS are not eligible for XOP optimization.

Web services generated using DFHLS2WS with CHAR-VARYING=BINARY specified may be eligible for the MTOM/XOP optimizations. Other web services generated using DFHLS2WS do not contain binary data and are not eligible for the MTOM/XOP optimizations, but will work normally in a PIPELINE that supports MTOM/XOP.

Provider pipelines
CICS provides a default application handler called DFHPITP that can be configured in a provider pipeline. This application handler is capable of handling XOP documents and creating the necessary containers to support the pipeline processing in both direct and compatibility mode. If you are using your own application handler in a provider pipeline, and want to enable MTOM/XOP, you should configure the pipeline to run in compatibility mode.
Requester pipelines
If your applications use the INVOKE WEBSERVICE command, CICS handles the optimization of the SOAP message for you in direct and compatibility mode. If you are using the program DFHPIRT to start the pipeline, you can only send and receive MIME Multipart/Related messages in compatibility mode.
Web Services Security
If you enable the MTOM handler in the pipeline configuration file to run in direct mode, and you also enable the Web Services Security message handler, the pipeline only supports the handling of MTOM messages in compatibility mode.
Handling binary data
When you have large binary data to include in your web service, for example a graphic file such as a JPEG, you can use MTOM/XOP to optimize the size of the message that is sent to the service provider or requester. The minimum size of binary data that can be optimized using MTOM/XOP is 1500 bytes. If the binary data in a field is less than 1500 bytes, CICS does not optimize the field.

As stated in the XOP specification, there should be no white space in the base64Binary data. Any application programs that produce base64Binary data must use the canonical form. If the base64Binary data in an outbound message does contain white space, CICS does not convert the data to a binary attachment. When base64Binary data is generated by CICS, the fields are provided in canonical form and therefore contain no white space.

The contentType attribute must be present on base64Binary fields for XOP processing to occur in compatibility mode on outbound messages. The contentType attribute must not be present on hexBinary fields.

Web service validation
If you turn on web service validation the following pipeline processing takes place:
  • If an inbound XOP document has been passed through the pipeline in direct mode, CICS automatically switches to compatibility mode and converts it back to standard XML when CICS web service support is about to validate the document.
  • An outbound SOAP message is generated as standard XML and is processed in compatibility mode.
The extra pipeline processing is required because the validation processing cannot handle the contents of XOP documents.