- Contents
SOAP API Developer's Guide
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.