![]() |
Copyright © Cloud Software Group, Inc. All Rights Reserved |
When the SOAP JMS is used for communication, the queue names for facade and target are specified as the global variables in the ASG_CONFIG_HOME/asg.properties file.
• Using the Config UI. See Set Runtime Properties for details.
• 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.
•
• 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.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.
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.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.Request queue: asg.soap.forwardResponse queue: asg.soap.forward.reply.0
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.
![]() |
Copyright © Cloud Software Group, Inc. All Rights Reserved |