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 exceptions to be raised if a web service message does not correspond to the specified WSDL description.
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.
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
.