The weblog helps you in performing a synchronous call to an external system which has an undocumented response message format. The challenge here is to construct the response message type to perform a synchronous call successfully. An approach has been suggested for synchronous DB calls. The same scenario can be extended to any other application.
Scenario
The sender initiates a synchronous call (by sending User Details (Username, password) to XI and the Response Details (role) are fetched from DB and sent back to the requesting application.
Fig 1.0 Synchronous DB scenario
Sequence of steps
Design Time
For the Request message, create the required Data type, Message Type.
The Response message is unknown, so create a Dummy Data type and a message type.
Design Inbound Message Interface. Notice that the dummy message type has been specified in Inbound Message Interface
Fig 5.0 Inbound Message Interface
Design Interface Mappings.
Fig 6.0 Interface Mapping
Configuration Time
Create the required receiver determination, Interface determination & mapping and receiver Agreements.
Fig 7.0 Configuration Objects
Runtime
Run the scenario by sending a request to XI Server.
Fig 8.0 Message Monitoring in sxmb_moni
In SXMB_MONI, you will find that the response message mapping has failed.
Fig 9.0 Error Message due to mapping exception
Copy the XML message and build your Data type, message type and Messgae Interface accordingly. Replace the Dummy message with hte newly created message type
Fig 10.0 Response Message type Structure
Now change the Message mappings and test your scenario again.
Fig 11.0 Corresponding new Response DataType
Result
You should now be able to perform a synchronous call to an external system which has an undocumented response message format.