Invoking an adapter service from a Web service

If your adapter service is deployed as a Web service provider, you can use the existing Web services support in CICS to invoke it.

The provider PIPELINE resource must be enabled to process the Web service request and response messages. The WEBSERVICE and URIMAP resources for your Web service provider application must also be enabled. If the request is using HTTP, you should also have a TCPIPSERVICE resource that is enabled.
  1. Send the SOAP message from the service requester to the Web service provider. The SOAP message body contains the request message. The contents vary depending on what you modeled in Service Flow Modeler.
    • By default, the SOAP body includes the request name of the adapter service that you want to invoke and any application data.
    • If you select to expose the whole message header, the SOAP body includes the DFHMAH header structure and any application data.
    The provider mode pipeline processes the SOAP message, and the contents of the SOAP body is placed in the DFHWS-DATA container by default. If you select to expose the whole message header in Service Flow Modeler, the DFHMAC-ALLPARMS container is used instead.
  2. The application handler in the pipeline passes the appropriate container to the DFHMADPL program.
  3. DFHMADPL checks the channel for additional containers. If you have added additional message handlers to the pipeline to override the contents of DFHWS-DATA with the DFHMAC-SYSPARMV1 or DFHMAC-LNK3270V1 containers, DFHMADPL uses the values in these containers instead.
  4. DFHMADPL defines and runs the BTS process for the Navigation Manager to invoke the adapter service using the values in the containers.
    • If the request message is successfully processed and a response is required, the DPL stub program places the response in the DFHWS-DATA or DFHMAC-ALLPARMS container. The pipeline creates a SOAP response message and sends it to the service requester.
    • If an error occurs, the DPL stub program creates a SOAP fault message and this is sent to the service requester instead. Details of the error are also placed in the DFHMAC-ERROR container on the channel.