# XML Converters generated for an IMS SOAP Gateway service requestor incorrectly expect language structures to begin with LL and ZZ when the IMS Synchronous Callout function is used

This topic describes the ability for XML converters to be compatible with the IMS™ synchronous callout function.

Problem:

XML Converters generated by Rational® Developer for System z® 7.5 are compatible with IMS Synchronous Callout (ISC) only if LL and ZZ are present in the mapped 01 level language structures.

IMS V10 SPE introduced the IMS Synchronous Callout function (ISC). This new function allows IMS applications to synchronously invoke Web services through the IMS SOAP Gateway. Unlike the IMS Asynchronous Callout function (IAC), where the response from the remote Web service always starts a new transaction instance, the ISC function allows an IMS application to wait for the response and immediately act on it the same transaction instance. In order to allow IMS applications to communicate synchronously with remote Web services, the ISC function bypasses traditional IMS message queues and to deliver the application’s request and response language structures.

Because IMS Synchronous Callout (ISC) bypasses IMS message queues, the function requires that the request and response data for the application are entirely contained in at most two 01 level language structures - one for the request data and one for the response data. In addition, language structures are not required to begin with LL and ZZ since these fields are only in used with asynchronous messaging; if these fields are defined in an 01 level language structure passed to ICAL, the new synchronous callout API, they are treated the same as any other field in the language structure.

Solution:

Using the Enterprise Service Tools Web Service Wizard:

Specify the IMS message type, either synchronous or asynchronous, via a new combo-box labeled "Callout message type" on the IMS SOAP Gateway Wizard page and regenerate the XML converters.

Using the Enterprise Service Tools Batch Processor:

Specify the IMS message type, either synchronous or asynchronous, via a new CodegenProperty named "GEN_IMS_MESSAGE_TYPE" and regenerate the XML Converters. The new CodegenProperty, "GEN_IMS_MESSAGE_TYPE", is described in the CodegenProperty table below:

Fields | Description
--- | ---
Attribute: GEN_IMS_MESSAGE_TYPE Valid values: ASYNC | SYNC Default value: ASYNC | The value of this attribute directs the COBOL and PL/I XML converter generators to generate code that is compatible with the IMS Asynchronous Callout (ASYNC) or IMS Synchronous Callout (SYNC) functions.

Parent topic: New features for single-service projects in Rational Developer for System z Version 7.5.1