IBM MQ Put
The Put activity can place messages into a configured queue.
- Datagram: basic message.
- Request: a message for which the sending application expects a response and for which a Reply to Queue is required.
- Reply: a message sent in response to a received Request type message. Usually the destination for this message has been mapped from the Reply To Queue field of the request message.
- Report: a message containing monitoring data. In most cases, report messages are generated by queue managers. However, it is possible for applications to do so using this message type.
The activity is capable of sending any of the four message types to permanent or dynamic queues. The capabilities of the activity are determined by the configuration, with some runtime behaviors controlled by the input schema. The type of message being sent might determine what fields are applicable for the put operation.
Messages can be sent to predefined queues or dynamic queues. If the destination or the reply to queue is dynamic, you must specify a properly configured model queue. The queue manager constructs a dynamic queue based on that template. The name of a unique dynamic queue can be generated if the queue name provided ends with an asterisk (*). It makes sense to use such names only if it is possible to configure a receiving application with the name of the newly created queue. The name can be taken from the destination element in the Output tab.
General
The General tab of the Put activity contains the following fields:
Multi-Message
The Multi-Message tab of the Put activity contains the following fields:
Advanced
The Advanced tab of the Put activity contains the following fields:
Activity Pooling
The Activity Pooling tab allows the activity to pool all the MQ resources associated with the put activity at the process level.
The Activity Pooling tab contains the following fields:
Field | Global Variable | Description |
---|---|---|
Pool Activity | N | Select the
Pool Activity checkbox 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 Put activity:
Output
Fault
The Fault tab lists exceptions that occur in the Put activity:
Error Schema Element | Data Type | Description |
---|---|---|
msg | String | The TIBCO ActiveMatrix BusinessWorks Plug-in for IBM MQ error message. |
msgCode | String | The TIBCO ActiveMatrix BusinessWorks Plug-in for IBM 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 | This is the original MQException's error code, if it is an MQException that triggers the fault. |