Request-reply messaging using an IBM MQ server
We can provide a reply-to destination in a message sent to a destination that is assigned to an IBM MQ server bus member. If the reply comes from an IBM MQ application, for example an IBM MQ JMS application, some restrictions apply to the reply-to destination. We must also configure an IBM MQ link over which the reply can flow.
When a message with a reply-to destination is sent to a destination that is assigned to an IBM MQ server bus member, the reply-to destination is represented by the following IBM MQ message descriptor fields:
- Queue name: this is set to the name of the service integration destination that has been specified as a reply-to queue.
- Queue manager name: this is set either to the name of the service integration bus from which the message was sent or to the virtual queue manager name specified in the bus member configuration for the Q server.
Queue names and queue manager names that are not recognized by IBM MQ are truncated at the first character that is not a valid IBM MQ character, or at the IBM MQ limit on the field length.
When we send a message from service integration using a WebSphere Q server, an IBM MQ JMS application can only reply to the reply-to destination in the message when you meet these conditions:
- The reply-to destination name must be a valid IBM MQ queue name.
- The reply-to destination must be on a service integration bus that has a name that is a valid IBM MQ queue manager name, or the virtual queue manager name specified in the bus member configuration for the MQ server must be a valid IBM MQ queue manager name.
- The reply-to destination must be on the same service integration bus as the bus where the message originated.
- Configure an IBM MQ link over which the reply can flow between the service integration bus and the IBM MQ network.
- The "Virtual queue manager name" that you allocate to the IBM MQ link must match the queue manager name specified for the reply-to destination, which can be either the name of the service integration bus to which the IBM MQ link points, or the virtual queue manager name specified in the bus member configuration for the Q server.