Feedback

  • Contents
 

SOAP Tools in Interaction Designer

This topic summarizes SOAP-related tools in Interaction Designer that create handlers to process SOAP requests or responses. For additional information, see Appendix B: SOAP Tools.

Initiator Tools

SOAP Initiator

This initiator triggers if the "Notification Event" of the request matches a specified string. The Notification Event on which the Initiator triggers is specified in the property dialog.


Request Tools

SOAP Get Request Info

Queries some information from the request handle.

SOAP Abort Request

Aborts the request. Aborting a request is useful if a SOAP request handler is registered as a Monitor handler.

SOAP Get Transport Info

Returns an XML document containing transport specific (header) data. It allows the client to include any kind of out-of-band data in the request.

SOAP Expects Response

Takes a different exit path depending on whether the SOAP request requires a response (YES) or not (NO).

SOAP Parse Request Payload

Parses the payload of the request into an XML document.

SOAP Send Response

Sends the specified payload as response to the sender of the request. To support transport specific features, the "Transport Control Data" argument takes an XML node whose content will be sent back to the client. It can be used to send transport specific out-of-band data to the client.


Payload Processing Tools

SOAP Create Envelope

Creates a new SOAP envelope.

SOAP Get Body

Retrieves the Body element from the SOAP envelope. A body must exist. If it can't be found, the tool exits through "Failure" and attaches error information to the envelope.

SOAP Get Body Element

Retrieves the first body element that matches the given base name and namespace.

SOAP Add Body Element

Adds an entry to the body of the SOAP envelope.

SOAP Query Encoding Style

Matches a space separated list of URIs against the "encodingStyle" attribute of the given element. If the element doesn't have an ‘encodingStyle' attribute, the parent of the element is checked and so on, until an element with an "encodingStyle" attribute is found. If that attribute contains any of the specified encoding style URIs, the tool returns through "Found" and returns the style that was found.

SOAP Get Header

Retrieves the header element from the SOAP envelope if it has one.

SOAP Get Header Element

Retrieves the first header element that matches the given base name and namespace. Returns the first element in the header if neither a name nor namespace is given. Takes "Not Found" exit if the envelope doesn't have a header or the element can't be found.

SOAP Get Header Elements

Returns iterator to a list of header elements filtered by the given arguments. Takes the "None" exit if envelope has no header or none of the header elements matched the filter criteria.

SOAP Add Header Element

Creates a header element and adds it to the given envelope. If the envelope does not have a header, one is inserted before the Body element.

SOAP Get Fault

Retrieves fault information from the SOAP envelope. If there is no style="color: #0e5470;"><Fault> element in the envelope, the "No Fault" exit is taken and NULL elements and empty strings are returned.

SOAP Set Fault

Adds a style="color: #0e5470;"><Fault> element to the envelope or replaces an existing one.

SOAP Create Fault Response

Copies the request envelope and replaces all children of the style="color: #0e5470;"><Body> element with a single style="color: #0e5470;"><Fault> element. It combines the functionality of the "SOAP Create Envelope" tool with the functionality of the "SOAP Set Fault" tool.

SOAP Get RPC Parameter

This is a convenience tool for cracking RPC requests. It retrieves a parameter element (child) from the first element in the <Body> element (method in an RPC request). It returns the first element that matches all of the specified arguments.

SOAP Add RPC Parameter

This is a convenience tool for composing RPC requests or responses. It adds a parameter element to the first element in the body of the envelope, which represents the method in RPC requests. Use the XML tools to add complex data (not just a string) to the parameter by manipulating the returned "Parameter Element" node.

SOAP Get RPC Method Info

This is a convenience tool for cracking RPC requests. It retrieves the first child element of the SOAP <Body> element (Method element in RPC requests). It returns a collection containing the child elements of the method, which constitute the method arguments.

SOAP Get Next RPC Parameter

This tool returns the element node at the current iterator position and returns an iterator to the next position.

SOAP Create RPC Response

This is a convenience tool for composing the response envelope for an RPC request. It copies the source envelope and replaces the method element in the body with an element that has the same name but "Response" added to its name. It also adds a <Result> element as child of the method element.

SOAP Set Element Type

In SOAP, the type of an argument or the return value is specified by the service description and doesn't need to be included in the payload. However, the service may define the type as xsd:anyType, for VARIANT types. This tool allows you to include the type in the argument.

SOAP Create Array

Turns an element, for example an RPC parameter, into a SOAP array. The array is created for values supplied as list of strings or just a number of empty elements that can be populated with complex data.


Invocation Tools

SOAP HTTP Request

This tool issues an HTTP request to the specified URL with the SOAP request envelope as payload. The response body is parsed and returned as response envelope.


Helper Tools

SOAP Base64 Encode

Converts a supplied UNICODE string to the specified character set (default = UTF-8) and encodes the resulting data into a Base64 string. Characters that cannot be translated to the destination character set will be represented as ‘?'. Wide character sets, such as UTF-16 are currently not supported.

SOAP Base64 Decode

Decodes the base64 encoded string into the binary representation and converts it to UNICODE based on the specified character set.

SOAP Base64 Encode File

Reads the specified file as binary data and encodes it into a base64 string. This tool can be used to send any kind of data through SOAP requests. For example, you could encode a wave file in a SOAP message.

SOAP Base64 Decode To File

Decodes the base64 encoded string into the binary representation and writes the data to the specified file as binary data.