From a layman's perspective a Web service is an archive of remote operations that can be called by sending messages over the Internet. A Web service provider publishes a Web service for query and use, and a Web service consumer calls operations from the service. A Web service provider makes available a WSDL (Web Services Description Language) document that defines the service interface. The WSDL document is in XML format. What happens behind the interface is up to the provider, but most providers map the interface to procedure calls in a supported programming language. Incoming requests from a consumer are passed through to the underlying code, and results are passed back to the consumer.
Simple Web Services are characterized by the following features.
- Single row as input and single row as output
- Deployed over HTTP without security
- Missing Firewall
- WSDL with Primitive types.
Complex Web Services are normally implemented using one or more(but not limited to) of the following features.
- SSL Authentication
- Arrays of rows in Input
- Arrays of rows in Output
- Arrays of rows in both Input and Output
- SOAP Headers with Username Token Authentication
- SOAP Headers with Session ID Information
- WSDL with Complex types.
InfoSphere DataStage Web Services Pack cannot invoke complex web services out of the box. It needs to be used in combination with XML Pack and other tools like SOAPUI and Tcpmon in order to invoke them. Upcoming article in series explores in detail the various options available in DataStage ASB Packs v2.0 to invoke some of the complex web services listed above.