SOAP domain message flows
SOAP domain message flows typically use SOAP nodes, WSDL, and a common logical tree format that is independent of the exact format of the web service message.
- As a web service provider, for example:
- As a web service consumer, for example:Or:
- As a web service facade, for example, by combining the provider
and consumer scenarios:
You can use the SOAPExtract node in conjunction with these patterns to extract the SOAP payload. If you are working with the HTTP nodes, you can use the SOAPEnvelope node to rebuild a SOAP envelope.
The main SOAP domain nodes are typically configured by WSDL, and in this mode, a prerequisite for a SOAP domain message flow is a deployable WSDL. You can either import a WSDL file into an application or library, or generate a WSDL file from an existing message set. For more information about importing a WSDL file, see Importing from WSDL. For more information about generating WSDL from an existing message set, see Message Sets: WSDL generation.
Deployable WSDL can then be used to configure SOAP nodes. You can do this by dragging the WSDL resource onto the node or by selecting the required WSDL resource from the node properties.
The WSDL is deployed with your completed message flow, enabling the integration node to raise exceptions if a web service message does not correspond to the specified WSDL description.
Alternatively you can create a web service from an existing WSDL and implement the defined service operations as subflows. For more information, see Creating an integration service based on a WSDL file.
You can change the operation mode of the SOAP domain nodes so that they act in gateway mode. In gateway mode, a WSDL is not required to configure the nodes because they handle generic request/response and one-way SOAP messages that are not tied to a specific WSDL. For more details, see Gateway operation mode for SOAP nodes.
You can enable WS-RM (reliable messaging) for SOAP message flows by associating the flow or node with a policy set configured for WS-RM. For further information, see Web Services Reliable Messaging.
A client can send an HTTP GET request to the endpoint
exposed by a SOAPInput node,
suffixed with a query string ?wsdl
, and receive a
response with the WSDL definition used to configure the flow; see Message flow configuration with a WSDL file.
The SOAP domain uses a common logical tree format that is independent
of the exact format of the web service message. For details of the
SOAP tree format, see SOAP tree overview.
Useful WSDL information is included in the logical tree under SOAP.Context
.