Web services lookup

Description

This step performans a Web Services lookup using the Web Services Description Language (WSDL).
See also: [Wikipedia: Web Services Description Language]

Limitations

  • Only SOAP WSDL requests / responses are understood.  The other variations of the WSDL standard are not yet implemented.
  • Not all WSDL XML dialects and formats are as easily read as we would like.  In those cases, you need to specify (manually) what the input and output fields look like.
  • Data conversion is done automatically still inside the step.  Especially in the case where we have dates and numbers this can go wrong.  If you encounter conversion errors we advice you to return Strings and convert them in a "Select Values" step.

Workarounds to these limitations:

  1. Use SOAP UI, generate the XML you need and push that to the service using the HTTP Post step. Samples can be found in your local sample folder General - Annotated SOAP Web Service call.ktr and WebServicesMovieListingAsHTTP.ktr
  2. Use the SOAP Call step (experimental): Plugin Download, Tutorial

Options

Option

Description

Step name

Name of the step; this name has to be unique in a single transformation

URL

The base URL pointing to the WSDL document that will be retrieved

Load (button)

The load button loads the WSDL at the specified URL and tries to automatically populate the input and output tabs and fields.
NOTE: If this doesn't work, you can still try to manually specify the input and output fields using the "Add Input" and "Add Output" buttons.

The number of rows per call

The number of rows to send with each WSDL call

Pass input data to output

If you disable this, the input will be eaten and only the WSDL output will be passed along to the next steps.

v2.x/3.x compatibility mode

We improved the parsing engine of the 3.x engine dramatically.  For compatibility reasons, we kept the old engine around to make sure older steps would still work OK.

Repeating element name

Specify the name of the repeating element in the output XML (if any).

HTTP authentication

Here you can put the username and password if these are required for the web service.

Proxy to use

Here you can optionally put the proxy host and port information.

Add Input / Add Output

These buttons will allow you to manually specify the input and output specifications of the WSDL service.
Note: The data of the input fields can be escaped by the Calculator step and the function "Mask XML content from string A"


Example

Some examples can be found in the ...\data-integration\samples\transformations folder.

Let's have a look at Web Services - NOAA Latitude and Longitude.ktr as an example of a Basic Web Services used with the Web Services Lookup Step:

In this scenario the Web service that is accessed is described with a WSDL 1.1 specification. The step can load this specification in one operation allowing the you to select and set input and output parameters. Output parameters are added to the step’s output steam and passed to another step for processing. There is no need to modify the SOAP request in this scenario as the Web service does not need any information other that the parameter that is sent.