WebSphere MQ RequestReply
The RequestReply activity performs the combined operations of putting a request message into a queue, and then listening on the indicated response queue for the reply.
Because the RequestReply activity depends on the request being committed to the request queue, this activity does not participate in local transaction semantics. This also means that this activity does not share a connection resource with activities in a local transaction because it can unexpectedly commit resources under the control of the local transaction.
General
The General tab of the RequestReply activity contains the following fields:
Advanced
The Advanced tab of the RequestReply activity contains the following fields:
Field | Module Property? | Description |
---|---|---|
Message Priority | Y | Set the priority of the message as it is to be retrieved by the queue manager. The values range from 0 to 9. |
Message Expiration | Y | The time, in tenths of a second, that the message persists in the queue before being deleted by the queue manager.
Values range from 0 to 2147483647. The default is 0, which means the message never expires. |
Generate Correlation Id | N | Select this check box to cause the queue manager to generate a unique correlation identifier for the message when it is sent. This means that the message identifier, which is always generated, is copied to the correlation identifier field. |
Persistence | N | Determines whether messages on the queue manager persist across restarts. |
Context Support | N | The input fields of a put operation fall into categories based on their context. Many fields are always present, but others are only present if the context relevant to that field is chosen. This is because the queue manager must grant the user the authorization to update these fields.
Select one of the following settings:
|
CICS Bridge Header | N | When enabled causes the input and output schemas to include the CICS bridge header: MQCIH. By mapping fields onto this header in accordance with the IBM CICS bridge for WebSphere MQ, it is possible to invoke CICS programs and run transactions which display screens. See the IBM Knowledge Center resources at https://www.ibm.com/support/knowledgecenter/SSGMCP_4.2.0/com.ibm.cics.ts.wmq.bridge.doc/topics/zc12190_.html for more information on how to interact with the CICS bridge. The specific fields related to the MQCIH header are not described in the input and output schemas section. Please see the relevant IBM documentation for this. |
IMS Bridge Header | N | When enabled causes the input and output schemas to include IMS bridge header: MQIIH. By mapping fields onto this header in accordance with the WebSphere MQ bridge for IMS, it is possible to invoke IMS programs and transactions. See the IBM Knowledge Center resources at https://www.ibm.com/support/knowledgecenter/SSFKSG_9.0.0/com.ibm.mq.pro.doc/q004310_.htm for more information on how to interact with the IMS bridge. The specific fields to the MQIIH header are not described in the input and output schemas section. Please see the relevant IBM documentation for this. |
Input
Activity Pooling
The Activity Pooling tab allows the activity to pool all the MQ resources associated with the request reply activity at the process level.
The Activity Pooling tab contains the following fields:
Field | Global Variable | Description |
---|---|---|
Pool Activity | N | Select the
Pool Activity check box to activate pooling for the client objects used by this activity. Selecting this option causes pooling to be done at a higher level than merely pooling the connection. All destinations used by the activity are kept open and the connection resource specified are not pooled in the usual way even if that resource has pooling enabled. This option is used when the server to which you are connected experiences very high latency such that opening, closing, and pooling of connections cause unacceptable performance degradation.
The primary consideration for choosing pooling parameters is the number of available connections to the queue manager. Choose values that do not create unnecessary resource consumption in the queue manager, and leave available connections for other applications (including other pooled connections and activities, remember that the application might be deployed on multiple engine instances). |
Pool Max | Y | Determines the maximum number of connections in the pool. When this limit is reached, subsequent activities fail with the following message:
"Activity Pool is exhausted: [Timeout waiting for idle object] Either enlarge the pool, allow it to grow, or increase the blocking time." |
Pool Max Idle | Y | Determines the maximum number of idle connections in the pool. When the number of unused connections reaches this number, the idle connections are disconnected and closed, freeing resources on the server. Amounts over the Max Connections value are ignored. |
Exhausted Action | N | Select one of the following options:
● FAIL - The activity fails immediately after the pool is exhausted. ● BLOCK - The activity waits for the "Pool Wait" interval before failing. If an MQ client is available before the timeout, the activity acquires it. ● GROW - The pool grows past its maximum parameters. |
Pool Wait | Y | If exhausted action is set to "BLOCK", the pool waits for the "Pool Wait" interval for an activity to become available before failing. |
The following table lists the input items for the RequestReply activity:
Output
Fault
The Fault tab lists exceptions that occur in the RequestReply activity:
Error Schema Element | Data Type | Description |
---|---|---|
msg | String | The TIBCO ActiveMatrix BusinessWorks Plug-in for WebSphere MQ error message. |
msgCode | String | The TIBCO ActiveMatrix BusinessWorks Plug-in for WebSphere MQ error code. |
mqCompCode | String | This is the original MQException's completion code, if it is an MQException that triggers the fault. |
mqReasonCode | String | This is the original MQException's reason code, if it is an MQException that triggers the fault. |
mqErrorCode | String | If the message originates as a WebSphere MQ API exception, then that exception's error code is here. |
The elements listed below occur only for the MqReqReply error schema.
Error Schema Element | Data Type | Description |
---|---|---|
mqReqReplyCorrId | Byte Array | If the message originates as a WebSphere MQ API exception, then that exception's request reply correlation id is here. |
mqReqReplyMsgId | Byte Array | If the message originates as a WebSphere MQ API exception, then that exception's request reply message id is here. |