XML request processing - non-passthrough

At run time, XML request processing is initiated from the DPL stub program DFHMADPL.

When DFHMADPL determines that the request message header is in XML, the following processing occurs:
  1. DFHMADPL issues a call to the XML to COBOL Converter program DFHMAXMI.
  2. The Header XML Converter program DFHMAXMI converts the header data from XML to the standard COBOL header format as contained in copybook DFHMAHV.

    DFHMAXMI saves the XML declaration portion of the XML and passes it back to DFHMADPL. This information is used for XML response processing.

    DFHMAXMI reports any errors it encounters to the CICS® system log, under the CEEMSG data set, using the message identifier of IGZ0280S. The CICS error information is returned to the service requestor.

  3. If the application data portion of the request message is also XML, DFHMADPL reads the properties file for the name of the Application Data XML Converter program that converts XML data into the flat COBOL data structure.

    The Application Data XML Converter program is a user defined program. The program name is defined as a property value of the Adapter service, that is specified by the developer at build time using Service Flow Modeler.

    This property value is written to the CICS Service Flow Runtime properties file when the Adapter service is generated and deployed to CICS.

Figure 1. XML Request processing
Diagram shows conditional processing that is performed by the DPL Stub program based upon the request message composition. If the request message is composed of an XML header, the DPL Stub program calls the XML Header Converter program to convert the XML into COBOL message structure. If the application data in the request message is XML, the DPL Stub program reads the Properties file for the request and determines the name of the XML application data conversion program. The DPL Stub issues a call to the user defined program, which converts the application data from XML to COBOL.

If the properties for the Adapter service do not include a value for the Application Data XML Converter program, the application data in the request message will not be converted.

If the program call issued by the DPL Stub program to the user defined Application Data XML Converter program fails, CICS Service Flow Runtime writes an error message to be returned to the service requestor.