When a service provider application that has not been deployed
with the CICS® Web
services assistant is invoked, CICS links to it with a channel.
The following containers are available containing the request:
- Container name
- Contents
- DFHWS-BODY
- For an inbound SOAP request when the pipeline includes a CICS-provided
SOAP message handler, the contents of the SOAP body.
- DFHREQUEST
- The complete request (including the envelope for a SOAP request) received
from the pipeline.
- DFHWS-XMLNS
- A list of name-value pairs that map namespace prefixes to namespaces for
the XML content of the request.
- DFHWS-SOAPACTION
- The SOAPAction header associated with the SOAP message in container DFHWS-BODY.
The following containers that were available to message handlers
in the pipeline are also available to your program, as well as any other containers
that you created:
- DFHFUNCTION
- DFHWS-SOAPLEVEL
- DFHWS-URI
- DFHWS-TRANID
- DFHWS-USERID
- DFHWS-APPHANDLER
- DFH-SERVICEPLIST
- DFHHANDLERPLIST
- DFHWS-PIPELINE
When your program has processed the request, it returns the response in
the following containers:
- Container name
- Contents
- DFHRESPONSE
- The complete response message to be passed to the pipeline. Use this container
if you do not use SOAP for your messages, or if you want to build the complete
SOAP message (including the envelope) in your program.
- If you supply a SOAP body in container DFHWS-BODY, DFHRESPONSE should
be empty. If you supply content in both DFHWS-BODY and DFHRESPONSE, CICS uses DFHRESPONSE.
- DFHWS-BODY
- For an outbound SOAP response, the contents of the SOAP body. Provide
this container when the terminal handler of your pipeline is a CICS-provided
SOAP message handler. The message handler will construct the full SOAP message
containing the body.
You can use any of the other containers to pass information that your pipeline
needs for processing the outbound response.
If the terminal handler of your pipeline is a CICS-provided SOAP message
handler, and your Web service does not return a response, you must return
container DFHNORESPONSE to indicate that there is no response. The contents
of the container are unimportant, as the message handler checks only whether
the container is present or not.
When you are not using a SOAP message handler, you indicate that there
is no response by not returning container DFHRESPONSE.
When you code API commands to work with the containers, you do
not need to specify the CHANNEL option, because all the containers
are associated with the current channel (the channel that was passed to the
program). If you need to know the name of the channel, use the EXEC CICS ASSIGN
CHANNEL command.