Other tasks (DataStage)

This section describes tasks that are not required for all web service operations but might be required for your server jobs.

Using SOAP headers (DataStage)

A web service can use SOAP headers to exchange information with a requester application. Within a server job, an input column supplies the input header elements, which generate a <SOAP-ENV:Header> block at run time. If the web service returns an output header that you want to use in your server job, you can extract it to an output column.

Examples

The XYZ web service expects a user ID and password in the input header and returns a session ID in the output header. You need to supply an input header. Optionally, you can extract the output header.

The DEF web service expects user ID and password as input arguments and does not return session information. No SOAP headers are involved.

For information about SOAP header requirements, consult the web service WSDL.

For information about setting up an input header, see Setting up Input Header Properties.

For information about extracting an output header, see Setting up Output Header Properties.

Setting up HTTP and HTTPS security (DataStage)

If the HTTP server that hosts the web service uses Basic HTTP authentication, you must supply a user ID and password with the web service request.

If the HTTP server uses an HTTPS connection, you have two choices for authenticating the server:

  • Trust the server implicitly.
  • Trust the server if its public key certificate is stored in a local keystore file.

For more information about setting up credentials and policies, see Setting up Security Properties.

Setting up proxy server information (DataStage)

If you need to pass web service requests through a proxy server, you must identify the server and its port. In addition, you might need to supply a user ID and password.

For more information about setting up proxy server information, see Setting up HTTP and HTTPS Proxy Properties.

Passing data through from the input link to the output link in DataStage

The output link supports a pass-through mechanism by which data is copied without modification from the input link to the output link. This mechanism works with columns that are not involved in the web service operation. It requires an exact match between column names that are specified in both the output link and the input link.

For example, you can copy comments from an input table column to an output table. If the Comments column is not part of the web service request but is included in the input and output links, the Comments value is automatically copied. You can disable the pass-through mechanism.

Note: When a string column is a pass-through column, the corresponding output link column must also be defined as a string column, and cannot be defined as a ustring column.

The Web Service stage has a propagate column to automatically copy input link column data to output link column data.

For information about disabling the pass-through mechanism, see Setting up Output Link Properties.

Processing SOAP faults in DataStage

SOAP faults contain error messages that are returned by a web service. The Web Service stage does not parse SOAP faults. However, you can log SOAP faults. The following table describes the processing options.

Processing option Result
Reject Rejected rows are sent to a Reject link, if one exists. If there is no Reject link, the row is ignored, and a warning message that contains the SOAP fault is logged.

You can disable logging the warning message by selecting the Disable Log Reject Reasons option.

Fatal The web service operation terminates when a SOAP fault is returned.
Warning The SOAP fault is logged as a warning.
Info The SOAP fault is logged as an information message.
Trace The SOAP fault is logged only if you activate tracing before you run the server job. Activate tracing in DataStage®.

To set up SOAP fault handling, see Setting up Stage Properties.

Setting a timeout factor for service requests in DataStage

Using a timeout factor, you can specify the maximum processing time for a web service request. By default, the Web Service stage imposes no limit. However, the web service might set one.

To set a timeout factor, see Setting up Stage Properties.

Defining a Reject link in DataStage

You can set up a Reject link that receives:

  • Input rows, including data sent to the web service and other columns
  • SOAP faults

A Reject link receives data only when the web service returns a SOAP fault. For information about setting up a Reject link, see Setting up Output Link Properties.

Maintaining Web Service request information in DataStage

You can manually enter the web service information.

You can edit a limited number of parameters like the web service name (Service Name) without affecting access to a web service. However, when you change most parameters such as port address (Port Address) and SOAP action (SOAP Action), you send a different request or access a different web service.

WSDL Element / URL Web Service Information Label Guideline
<service name>
Service Name Description
<operation name>
Operation Name Affects access
<address location>
Port Address Affects access
<port name>
Port Name Description
(WSDL URL)
WSDL Address Description

<operation soapAction>
SOAP Action Affects access
<binding transport=...
style=>
Operation Style Affects access
xmlns
Input Message Namespace Affects access

For more information about editing web service request information, see Setting up Stage Properties.