Using SOAP MTOM with the SOAPReply, SOAPRequest, and SOAPAsyncRequest
nodes
The use of outbound MTOM messages
can be configured on the SOAPReply, SOAPRequest, and SOAPAsyncRequest nodes.
The nodes have a property called Allow
MTOM, which defines whether MTOM can be used.
An MTOM output message is written if all of the following criteria
are met:
- The Allow MTOM property
is selected on the WS Extensions tab.
- Validation is enabled. The Validate property
on the SOAPRequest and SOAPAsyncRequest nodes controls
validation of the anticipated response message and not validation
of the outgoing request. MTOM output is therefore suppressed unless
you set Validate to Content and value on a preceding
input node or transformation node.
- No child elements exist below SOAP.Attachment in
the logical tree. If child elements are present, SOAP with Attachments
(SwA) is used.
- Elements exist in the output message that are identified as base64Binary
in the associated XML Schema and whose length does not fall below
a default threshold size of 1000 bytes.
You can use the local environment setting MTOMThreshold to
override the MTOM element size threshold. The MTOM element size threshold
is set to a default value of 1000 bytes.
The Allow MTOM node property
and the MTOMThreshold setting can both be overridden
in the local environment.
The overrides that apply at a
SOAPReply node are:
- LocalEnvironment.Destination.SOAP.Reply.AllowMTOM,
which can have a value of true or false
- LocalEnvironment.Destination.SOAP.Reply.MTOMThreshold,
which is an integer value in bytes
The equivalent overrides for a
SOAPRequest or
SOAPAsyncRequest node are:
- LocalEnvironment.Destination.SOAP.Request.AllowMTOM,
which can have a value of true or false
- LocalEnvironment.Destination.SOAP.Request.MTOMThreshold,
which is an integer value in bytes