Preparing callout messages
If you are not using the IMS Connect XML adapter function to convert the data between bytes and XML, you must ensure that the callout message from your IMS application is in a valid XML format.
Your IMS application must
send the callout request message in an XML format that can be processed
by SOAP Gateway and
the target web service appropriately. You must add the <IOGServiceData>
service
data information to the callout request message.
Callout message XML schema sample
The following example is a sample callout message XML schema. The callout messages generated from Rational® Developer for System z® conform to this schema.
<schema targetNamespace=http://www.ibm.com/IMS/Callout
xmlns:IMS="http://www.ibm.com/IMS/Callout" elementFormDefault="qualified"
xmlns="http://www.w3.org/2001/XMLSchema">
<!-- Global element -->
<element name="IOGCallout" type="IMS:IOGCalloutType"/>
<!-- Message contents -->
<complexType name="IOGCalloutType">
<sequence minOccurs="1" maxOccurs="1">
<!-- Web service invocation information -->
<element name="IOGServiceData" type="IMS:IOGServiceDataType"
minOccurs="1" maxOccurs="1"/>
<!-- Outbound language structure expressed as XML -->
<element name="IOGPayloadData" type="anyType" minOccurs="1"
maxOccurs="1"/>
</sequence>
</complexType>
<!-- Web serice invocation information -->
<complexType name="IOGServiceDataType">
<sequence>
<!-- Typically the WSDL file name without the extension -->
<element name="WSID" type="string" minOccurs="1" maxOccurs="1"/>
<!-- Target namespace of WSDL -->
<element name="Namespace" type="string" minOccurs="1" maxOccurs="1"/>
<!-- Service container of Port of Operation to invoke -->
<element name="Service" type="string" minOccurs="1" maxOccurs="1"/>
<!-- Port container of Operation to invoke-->
<element name="Port" type="string" minOccurs="1" maxOccurs="1"/>
<!-- Operation to invoke on Port of Service -->
<element name="Operation" type="string" minOccurs="1" maxOccurs="1"/>
</sequence>
</complexType>
</schema>
Tip: The
values of the service name and operation name are used to determine
the web service and the associated correlator.
Callout message example
The following example is a sample callout message.
<IMS:IOGCallout xmlns:IMS="http://www.ibm.com/IMS/Callout"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.ibm.com/IMS/Callout IOGCallout.xsd ">
<IMS:IOGServiceData>
<IMS:WSID>IMSPHBK</IMS:WSID>
<IMS:Namespace>http://www.IMSPHBKI.com/IMSPHBKI</IMS:Namespace>
<IMS:Service>IMSPHBKService</IMS:Service>
<IMS:Port>IMSPHBKPort</IMS:Port>
<IMS:Operation>IMSPHBKOperation</IMS:Operation>
</IMS:IOGServiceData>
<IMS:IOGPayloadData>
<INPUTMSG
xmlns="http://www.IMSPHBKI.com/schemas/IMSPHBKIInterface">
<in_cmd>DISPLAY</in_cmd>
<in_name1>last1</in_name1>
</INPUTMSG>
</IMS:IOGPayloadData>
</IMS:IOGCallout>