Gateway as SOAP JMS Server

TIBCO API Exchange Gateway acts as a SOAP JMS server at the facade side. To submit a request using the SOAP JMS transport at the facade side, the consumer or client must use a single incoming queue to place the request. By default, the queue name for the incoming request is asg.soap.in.request. Similarly, you can configure another queue to store the response from the target operations at the facade side. By default, the queue name for storing responses at the facade side is asg.soap.in.request.reply.0.

When a client sends a request using the SOAP JMS transport, it sets the JMSReplyDestination header field on the request message. The Core Engine uses the destination name as specified in the JMSReplyDestination header field to send the response. If the JMSReplyDestination header field of the request message is not set by the client, the Core Engine uses the queue name to send the response as specified in the ASG_CONFIG_HOME/asg.properties file.

The Core Engine populates the JMSCorrelationId header field value of the response message with the value of JMSCorrelationId header, which was received in the request from the client. If the JMSCorrelationId header field value of the client request message is empty, the Core Engine populates the JMSCorrelationId header field value of the response message with the value of JMSMessageId from the received message.

Note:
  • You can define and configure one JMS server at the facade side to store the requests and responses at the facade side.
  • The request queue must exist on the JMS server at the facade side when the Core Engine is started.
  • The destination value as specified in the JMSReplyDestination header field must exist on the same JMS Server from where the request was received.
  • The queue for storing the response at the facade side is used only if the JMSReplyDestination header value was not set in the request message from the client. This is used mostly for the asynchronous incoming client requests where it does not expect a response.