Configuring Java CAPS Project Components for Application Adapters

Inbound WebSphere MQ Adapter Connectivity Map Properties

The inbound WebSphere MQ Adapter parameters, accessed from the Connectivity Map, are organized into the following sections:

Inbound WebSphere MQ Adapter Settings

The Inbound WebSphere MQ Adapter Settings section of the WebSphere MQ Adapter Connectivity Map properties contains the top-level parameters displayed in the following table.

Table 1–21 Connectivity Map - Inbound WebSphere MQ Adapter Settings

Name 

Description 

Required Value 

Queue Name

Specifies the name of the queue from which messages are picked up (subscribed). 


Note –

Inbound mode Adapters will not function if a non-local queue is specified. Non-local queues include alias queues and local queue definitions to remote queues. This limitation applies only applies to polling/receive mode Adapters, not outbound Adapters used to retrieve messages.


The name of the WebSphere MQ queue. 

The configured default is default.

Maximum Message Size

Specifies the maximum message size that the Adapter is able to get from a queue. A value of zero (0) instructs the Adapter to use the MQ-provided default size. If you specify a non-zero value, and a message on the queue is larger than this value, one of the following will occur: 

If the MQC.MQGMO_ACCEPT_TRUNCATED_MSG property is set to True, the Adapter processes as much of the message from the queue as possible, producing a truncated message.

If the MQC.MQGMO_ACCEPT_TRUNCATED_MSG property is set to False, the Adapter leaves the message on the queue and raises an MQException with a completion code of MQCC_WARNING, and with a reason code of MQRC_TRUNCATED_MSG_FAILED.

A number indicating the maximum message size in bytes. 

The configured default is 0 (use the MQ defined default size).

Schedule Interval

Specifies the polling interval in milliseconds at which the subscribed queue is polled for messages. This is the duration of the pause, in milliseconds, between attempts to get messages from the queue. 

The number of milliseconds at which the queue is polled. 

The configured default is 5000 (or 5 seconds).

Security Exit

Specifies the optional, package qualified name of a user-defined class that implements the com.ibm.mq.MQSecurityExit interface. WebSphere MQ invokes an instance of the class whenever the Adapter attempts to connect to the queue manager. The named class must include a default constructor.

This parameter is only used for client connections. Security Exits are not applicable to bindings connections. 

For more information about Security Exits, see the IBM document, WebSphere MQ Using Java (CSQZAW09) regarding MQSecurityExit.

The name of the user-defined class. This property also requires an assigned value for the Security Exit Jar Classpath property.

Security Exit JAR Classpath

Specifies the absolute path to the JAR file that contains the named Security Exit. This property is required if the Security Exit is specified. 

The specified JAR is packaged into the application (EAR) file that is generated during Project activation. If the specified JAR cannot be accessed or found, the activation will fail. 

If this property value is left blank, you must ensure that a JAR file containing the Security Exit is made accessible to the runtime Environment prior deploying the Project (for example, by manually copying the JAR file into the Integration Server’s lib directory prior to or during the Deployment Process). 

For more information about Security Exits, see the IBM document, WebSphere MQ Using Java (CSQZAW09) regarding MQSecurityExit.

The absolute path for the JAR file that contains the named Security Exit class. 

Inbound WebSphere MQ Adapter Settings with GetMessageOptions and matchOptions

The Inbound Adapter Settings with GetMessageOptions and matchOptions section of the WebSphere MQ Adapter Connectivity Map properties contains the top-level parameters displayed in the following table.

Table 1–22 Connectivity Map - Inbound WebSphere MQ Adapter Settings with GetMessageOptions and matchOptions

Name 

Description 

Required Value 

correlationId

Specifies the correlation identifier of the message to be retrieved. Normally the queue manager returns the first message with a message identifier and correlation identifier that matches the identifiers specified. 

The correlation identifier of the message. 

groupId

Specifies the byte string that identifies the message group to which the physical message belongs. 

A byte string that indicates the message group. 

messageId

For an MQGET call, this field specifies the message identifier of the message to be retrieved. Normally, the queue manager returns the first message with a message identifier and correlation identifier that matches those identifiers specified. 

For an MQPUT call, this specifies the message identifier to use. 

The message identifier. 

messageSequenceNumber

Specifies the sequence number of a logical message within a group. 

The sequence number of the logical message within a group. 

The configured default is 1.

MQMO_MATCH_CORREL_ID

Specifies that the retrieved message must have a correlation identifier that matches the value of the correlationId parameter. The values are:

  • True: Indicates that the message must have a matching correlation identifier.

  • False: Indicates that the correlation identifier is ignored and any correlation identifier will be accepted.

    This match is in addition to any other matches that may apply (for example, the message identifier).

True or False.

The configured default is False.

MQMO_MATCH_GROUP_ID

Specifies that the retrieved message must have a group identifier that matches the value of the groupId parameter. The values are:

  • True: Indicates that the message must have a matching group identifier.

  • False: Indicates that the group identifier is ignored and any group identifier is accepted.

    This match is in addition to any other matches that may apply (for example, the correlation identifier).

True or False.

The configured default is False.

MQMO_MATCH_MSG_ID

Specifies that the retrieved message must have a message identifier that matches the value of the messageId parameter. The values are:

  • True: Indicates that the message must have a matching message identifier.

  • False: Indicates that the message identifier is ignored and any message identifier is accepted.

    This match is in addition to any other matches that may apply (for example, the correlation identifier).

True or False.

The configured default is False.

MQMO_MATCH_MSG_SEQ_NUMBER

Specifies that the retrieved message must have a message sequence number that matches the value of the messageSequenceNumber parameter. The values are:

  • True: Indicates that the message must have a matching message sequence number.

  • False: Indicates that the message sequence number is ignored and any message sequence number is accepted.

    This match is in addition to any other matches that may apply (for example, the group identifier).

True or False.

The configured default is False.

MQMO_NONE

Specifies that no matches are to be used in selecting the message to be returned. All messages on the queue are eligible for retrieval (subject to some MQGMO_ options...). 

True or False.

The configured default is True.

Inbound WebSphere MQ Adapter Settings with GetMessageOptions and options

The Inbound Adapter Settings with GetMessageOptions and options section of the WebSphere MQ Adapter Connectivity Map properties contains the top-level parameters displayed in the following table.

Table 1–23 Connectivity Map - Inbound Adapter Settings with GetMessageOptions and options

Name 

Description 

Required Value 

MQGMO_ACCEPT_TRUNCATED_MSG

Specifies whether a truncated message is accepted as a complete message. If the message buffer is too small to hold the complete message, this option allows the MQGET call to fill the buffer with as much as it can hold and complete its processing. Without this option, in the given situation, the MQGET call will still be filled to capacity, but the processing will not be considered completed. The values are: 

  • True: Indicates that a truncated message is accepted as a complete message.

  • False: Indicates that a truncated message is not considered as a complete message.

True or False.

The configured default is True.

MQGMO_FAIL_IF_QUIESCING

Forces the MQGET call to fail if the queue manager is in the quiescing state. The values are: 

  • True: Indicates that calling MQGET fails if the queue manager is in the quiescing state.

  • False: Indicates that calling MQGET does not fail if the queue manager is in the quiescing state.

True or False.

The configured default is True.

MQGMO_SYNCPOINT

Forces the MQGET call to get the message under syncpoint control; the message is marked as being unavailable to other applications, but it is deleted from the queue only when the unit of work is committed. The message is made available again if the unit of work is backed out. The values are: 

  • True: Indicates that calling MQGET gets the message under syncpoint control.

  • False: Indicates that MQGET, when called does not get the message under syncpoint control.

True or False.

The configured default is False.

MQGMO_SYNCPOINT_IF_PERSISTENT

Forces the MQGET call to get the message under syncpoint control if the message is persistent. The values are: 

  • True: Indicates that calling MQGET gets the message under syncpoint control if the message is persistent.

  • False: Indicates that MQGET, when called does not get the message under syncpoint control if the message is persistent.

True or False.

The configured default is False.

MQGMO_COMPLETE_MSG

Specifies that only a complete logical message can be returned by calling MQGET. If the logical message is segmented, the queue manager reassembles the segments and returns the complete logical message to the application; the fact that the logical message was segmented is not apparent to the Adapter. The values are: 

  • True: Indicates that only a complete logical message can be returned by calling MQGET.

  • False: Indicates that a complete logical message is not required.

True or False.

The configured default is False.

MQGMO_WAIT

Specifies that an MQ GET call waits (block and/or suspend) until a message becomes available in the queue. The values are: 

  • True: Indicates that an MQ GET call waits until a message becomes available in the queue.

  • False: Indicates that an MQ GET call does not wait until a message becomes available in the queue.

True or False.

The configured default is False.

waitInterval

Specifies how long (in milliseconds) an MQ GET call waits for a message to become available in the queue. This parameter is used in conjunction with MQGMO_WAIT. If MQGMO_WAIT is set to false, waitInterval is not used.

Specifying a negative value indicates that the wait will last indefinitely. 

Setting this value to a negative number causes the polling Adapter to execute MQ GET calls with a wait interval of MQWI_UNLIMITED. With this type of get call, the Adapter will block indefinitely until a suitable message is available. If the Integration Server (in association with the Application Server) is commanded to shut down or restart while the Adapter is still blocked, the Integration Server will not be able to proceed until the Adapter is unblocked by the availability of a suitable MQ message.

The same limitation affects the non-polling use of the Adapter. The WebSphere MQ Adapter’s OTD GMO structure exposes a method named setUnlimitedWait() to Java Collaborations that, when used, sets the waitInterval to the value MQWI_UNLIMITED. If using setUnlimitedWait() causes the Adapter to block indefinitely during a subsequent get call, the Integration Server will be unable to shut down until the Adapter is unblocked.

A number indicating the period of time, in milliseconds, that an MQ GET call waits for a message to become available in the queue. 

The configured default is 0.