Gateway as SOAP JMS Client

TIBCO API Exchange Gateway acts as a SOAP JMS client at the target side.

Request Destination at Target Side

When the Core Engine forwards the request to the target side, it uses the queue or topic name as configured in the Destination Name and Destination Type fields of the Services tab configuration of the Config UI to store the southbound request. The queue name for southbound requests can also be specified by the tibco.clientVar.ASG/Endpoint/SOAPJMS/DefaultTargetRequestQueue global variable in the ASG_CONFIG_HOME/asg.properties file. The queue name from this global variable is used only if the Destination Name field on the ROUTING > Target operations tab on the Config UI is empty.

Note: The Config UI gives an error if the value of the Destination Name field of the ROUTING > Target operations tab on the Config UI is empty. You can set this value as empty in the TargetOperation.cfg directly located under the ASG_CONFIG_HOME/ASG_Config_name directory, where ASG_Config_name is the gateway configuration project.

Response Destination at Target Side

When the SOAP JMS transport is used at the southbound (target) side, the Core Engine uses the queue to store the southbound responses. This queue name is specified by the tibco.clientVar.ASG/facade/SOAPJMS/replyQueue global variable in the ASG_CONFIG_HOME/asg.properties file. The Core Engine sets the JMSReplyDestination as the value specified in the reply queue name to store the responses from the target operations.

When the SOAP JMS transport is used at the target side, the default queue names for request and response are as follows:

Request queue: asg.soap.forward

Response queue: asg.soap.forward.reply.0

Note:
  • You can define and configure one JMS server at the target side to store the requests and responses at the target side.
  • The response queue should exist on the JMS server at the target side when the Core Engine is started. If the Core Engine cannot find them on the JMS server, it throws an expection. When the Core Engine is started and the SOAP JMS channel is enabled, the Core Engine connects to the JMS server and starts listening to the configured queue during the engine startup.

The Core Engine uses a single JMS queue as the reply destination for all SOAPJMS requests sent by the engine. If multiple instances of the Gateway core engines (asg-core or asg-caching-core) are deployed, it is required that each instance must have a unique setting for the tibco.clientVar.ASG/Endpoint/SOAPJMS/TargetResponseQueue global variable. This ensures that the responses are returned to the correct Core Engine.