IBM MQ custom properties
WebSphere Application Server supports the use of custom properties to define IBM MQ properties. This is useful because it enables WAS to work with later versions of IBM MQ that might have properties that are not available in the WAS administrative console.
For WAS v7.0 or later, the custom properties defined are validated by the IBM MQ resource adapter contained in WAS. In earlier releases, this was done within WAS itself, and then by the IBM MQ client jar files. If we have defined a property that is not valid for IBM MQ, the IBM MQ resource adapter creates an exception, which is caught by WAS, and logged in the Systemout.log and SystemErr.log files. Examples of error messages are given at the end of this topic.
When a later version of IBM MQ is available supported by the WAS installation, new IBM MQ properties might be created that are not known to WAS. We can configure these as custom properties through WAS so that they are recognized by the IBM MQ resource adapter. We can also configure WAS to point to the IBM MQ resource adapter in the external JMS provider, as described in Configure the IBM MQ messaging provider with native libraries information.
For information on valid values for IBM MQ properties, refer to the Use Java and System Administration sections of the IBM MQ information center.
IBM recommends using the High Performance Extensible Logging (HPEL) log and trace infrastructure . We view HPEL log and trace information using the logViewer .
The following scenarios illustrate how different cell configurations might be affected.
Mixed node scenario
In this mixed node scenario, a cell consists of a WAS, v9.0 deployment manager, two WAS, v6 nodes, and two WAS, v9.0 nodes. If an IBM MQ connection factory is defined at cell level and has custom properties defined that exploit the new fields available in IBM MQ, then the connection factory is only bound into the WAS cells that are at v9.0 level. The WAS, v6 nodes do not know about the new IBM MQ properties and do not bind into the JNDI. The enhancements made to WAS, v9.0 allow validation of the properties to be deferred to the IBM MQ resource adapter.Figure 1. Mixed node scenario
IBM MQ v7 or later scenario
In this scenario a cell consists of WAS, v9.0 deployment manager and nodes. The IBM MQ messaging provider is running at a level later than v6. WAS is using the default IBM MQ resource adapter shipped with WAS v9.0. In this scenario the IBM MQ resource adapter is not aware of the new IBM MQ properties so the validation fails and the connection factory does not bind into the JNDI.Figure 2. Future version of IBM MQ scenario
Correctly configured scenario
In this scenario, which is similar to the previous one, a cell consists of WAS, v9.0 deployment manager and nodes. The IBM MQ messaging provider is running at a level later than v6. To successfully use the new IBM MQ properties it is necessary to configure the WAS to point to the IBM MQ resource adapter associated with the later version of IBM MQ.Figure 3. Correctly configured scenario
Error message example
The exception created by the resource adapter contains error messages similar to the following example:[09/02/06 15:40:06:377 GMT] 0000000a ContainerImpl E WSVR0501E: Error creating component null [class com.ibm.ws.runtime.component.ApplicationServerImpl] com.ibm.ws.exception.RuntimeWarning: com.ibm.ws.runtime.component.binder. ResourceBindingException: invalid configuration passed to resource binding logic. REASON: Failed to create connection factory: Error raised constructing AdminObject, error code: XAQCF PropertyName : XAQCF PropertyNamewhere PropertyName is the name of the invalid property.
Configure custom properties for IBM MQ messaging provider JMS resources Configure custom properties for the IBM MQ resource adapter Configure the IBM MQ messaging provider with native libraries information Use High Performance Extensible Logging to troubleshoot applications