SOAP Client plugin

SOAP Client plugin tasks can be used as Input, Output and Action tasks, although their basic function is to generate output. SOAP (Simple Object Access Protocol) is a light protocol that defines a standard XML format used to communicate among systems across different architectures, languages, and operating systems.

A SOAP request is an XML-based Remote Procedure Call (RPC) sent using the HTTP transport protocol. The payload of the SOAP packet is an XML document that specifies the call being made and the parameters being passed.

Web services, a SOAP class of applications, expose their services via the Internet in a manner that lets other applications access them, as well as use and combine them as required.

In order to access and successfully use Web services, client applications must know how to get them, what operations they support, what parameters they expect, as well as what they return. SOAP servers make this information available via WSDL (Web Service Description Language) files.

To configure a given SOAP Client plugin task in the PlanetPress Workflow Configuration program, you must first get its WSDL file (note that you cannot download the WSDL file over an HTTPS connection, so you should use an HTTP connection to get the file and then switch back to a secure connection). This lets you know which services the SOAP server provides, as well as each service’s methods and name spaces.

If firewalls control communication between the SOAP client and the Web servers, they must be configured so as not to block client-server communication.

In the case of "string" type data, SOAP Client plugin tasks normalize all line endings to a single line feed character.

Timeout

By default the SoapClient plugin waits 100 seconds before returning an error if it doesn't get a response. To change the time the Soap Client plugin should wait, a Timeout registry key can be set in:
HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Objectif Lune\PlanetSuite\PlanetWatch\TimeoutVal (DWORD)
The value can be set to anything, in seconds. To wait indefinitely for a response, -1 can be used. However, this could cause the process to hang if the Soap Server never responds nor closes the connection.

Task properties

General Tab
  • WSDL address: Enter the URL address of the WSDL file, or choose a previously selected address from the drop-down list.

    The WSDL Address of a PlanetPress Workflow SOAP server is the following: http://127.0.0.1:8080/wsdl/isoapact (assuming you are on the same machine and did not change the default HTTP port).

  • Get: Click to get the WSDL file from the SOAP server and populate the Service box below.
  • Service: Choose an available Web service from this drop-down list to populate the Method box below. You may also enter the service name directly if the WSDL file cannot be found.
  • Method: Choose an available method from this drop-down list. This populates the Namespace box below. You may also enter the method name directly.

The following three options are only available in the Legacy SOAP Client plugin:

  • Namespace: You may choose an available namespace to prevent ambiguity between identically named elements or attributes. You may also enter a namespace directly.
  • Resolve: Click to apply the options you chose above and to display the arguments of the chosen method in the Arguments box below.
  • As script: Click to apply the options you chose above and to display information on the chosen Web service in JavaScript format in a script viewer. You should use this option if the Web service is too complex to be interpreted correctly by the SOAP Client plugin.

  • Name: Displays the name of the arguments associated with the selected method. Note that you may also manually enter new arguments, change or delete existing ones, as well as change their order if needed.
  • Type: Displays the argument type.
  • Value: Lets you enter fixed or variable values. To exchange variable information between the Web service and PlanetPress Workflow, you must use job information variables %1 to %9 or variable %c (which contains the entire job file). Note that return values (arguments which are used to return information to the SOAP Client) are displayed in bold font.
  • Namespace: Displays the namespace of the arguments associated with the selected method.
  • Use returned raw SOAP packet as new data file: Check to use the complete SOAP packet (including the passed parameters) instead of the parameters only. This option overrides any return value set to %c in the Arguments box. You should use this option when the SOAP Client plugin is not able to fully support the syntax of the response.
Advanced Tab
  • Domain: Enter the domain for the authentication on the SOAP server. The Domain is optional even when authentication is used.
  • Username: Enter the user name for the authentication, if required.
  • Password: Enter the password for the above user name.
  • Allow invalid security certificate: Check to ignore SSL certificates that are invalid.

On Error Tab

For a description of the options on the On Error tab see Using the On Error tab.

Miscellaneous Tab

The Miscellaneous tab is common to all tasks.

It contains a text area (Task comments) that lets you write comments about the task. These comments are saved when the dialog is closed with the OK button and are displayed in The Task Comments Pane.

Check the option Use as step description to display the text next to the icon of the plugin in the Process area.

The tab also provides an option to highlight the task in The Process area with the default color, set in the Preferences (see Colors), or the color selected or defined under Highlight color on this tab.
To revert the selected highlight color to the default color, open this tab, turn the Highlight option off and close the dialog with the OK button; then turn highlighting back on.
Highlighting can also be turned on and off via the task's contextual menu and with the Highlight button on the View ribbon.