Webservice (SOAP) Connector
Note
The Webservice (SOAP) Connector will be deprecated with Release 8.0 of the X4 BPMS and no longer be supported in future releases.
This adapter sends a SOAP Request via HTTP(S) to the URL of a web service and issues the returned SOAP Response. It communicates with servers via HTTP (Hyper Text Transfer Protocol) or HTTPS (HTTP Secure).
If authentication is required, this must be SOAP-based via the SOAP header; its structure (certificate-based, token-based, etc.) must first be clarified with the remote peer. HTTP and NTLM authentication and proxy servers are also supported.
Note:
The adapter supports SOAP MTOM (Message Transmission Optimization Mechanism), which can be used to transmit large documents or binary data in MTOM-based WebServices via XOP (XML-binary Optimized Packaging) with high performance, see WebService Starter (veraltet).
MTOM processing for requests is enabled only if the adapter's input document has the MIME type text/xml or application/xml.
The MTOM function is controlled via Processing Instructions, which are added to the SOAP request document to enable MTOM on input side:
<?useMTOM?>: enable MTOM function for this SOAP request<?MTOM-xpath 0-n XPath expressions ?>: Any number of XPath expressions to define the elements containing binary data<?MTOM-size size in KB ?>: size of the data in kilobytes from which compression is activated (default: 1 KB)
In addition, the adapter automatically converts MTOM-based SOAP responses provided by a web service into standard SOAP responses.
Properties
| Operation | Determines which operation the adapter executes Possible values: |
Parameters
| Adapter | Main class of the adapter (do not change!) Possible values: |
| wsURL | URL to which the SOAP request is sent, with the default port Possible values: Any web service URL
|
| soapAction | HTTP header of the SOAP request. The value of this parameter is a URL that identifies the requested operation. |
| login | Username for simple HTTP authentication Possible values: Any string |
| pwd | Password for simple HTTP authentication Possible values: Any string |
| preemptiveAuth | Enable preemptive authentication (using credentials of Possible values:
|
| pxHost | IP address or host name of a proxy server Possible values: Any valid string (e.g. |
| pxPort | Port number of the proxy server Possible values: Any integer |
| pxLogin | Username for the proxy server Possible values: Any string |
| pxPwd | Password for the proxy server Possible values: Any string |
| pxNTLMDomain | Windows domain for NTLM authentication via NTLM proxy Possible values: Any domain name |
| pxNTLMhost | Host (computer name) from which the authentication request originates (for NTLM authentication via NTLM proxy). Possible values: Any host name |
| pxUseNTLM | Use Microsoft's proprietary NTLM authentication for the proxy Possible values:
|
| nTLMDomain | Windows domain for NTLM server authentication Possible values: Any domain name |
| nTLMhost | Host (computer name) from which the NTLM server authentication request originates. Possible values: Any host name |
| useNTLM | Use Microsoft proprietary NTLM server authentication Possible values:
|
| timeout | Time limit for establishing connection in milliseconds Possible values:
|
| keystorePath | Complete path to the keystore file; if a keystore is specified, only certificates of this keystore are accepted Possible values:
|
| keystorePassword | Password for the keystore file Possible values: Any string |
Status values
1 | The operation was executed successfully. |
-1 | The operation failed due to a technical error. |
Input
To call a web service with MTOM, the SOAP request must contain the above processing instructions, for example:
<?useMTOM?>
<?MTOM-xpath soapenv:Envelope/soapenv:Body/ws:signVerifyRequest/ws:Service
RequestData/ws:Document?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:ws="http://authentidate.de/ws">
<soapenv:Header />
<soapenv:Body>
<ws:signVerifyRequest>
<ws:ServiceRequestData>
<ws:Document>JVBiRi0xLjMKMyAwIG9iago8PC9UeXBlIC9QYWdlCi9QYXJlbnQgM
SAwIFIKL1Jlc291cmNlcyAyIDAgUgovQ29udGVudHMgNCAwIFI+PgplbmRvYmoKNC
AwIG9iago8PC9GaWx0ZXIgL0ZsYXRlRGVjb2RlIC9MZW5ndGggMjEzNT4+CnN0cmV
</ws:Document>
<ws:DocumentName>R_1639_37480.pdf</ws:DocumentName>
<ws:ServiceRequest>SIGN</ws:ServiceRequest>
</ws:ServiceRequestData>
</ws:signVerifyRequest>
</soapenv:Body>
</soapenv:Envelope>
Multiple Processing Instructions are always listed as individual elements one after the other.