users@glassfish.java.net

Re: wmq.jmsra.rar IBM MQ resource adaptor glassfish MDB deploy problem

From: <glassfish_at_javadesktop.org>
Date: Wed, 17 Feb 2010 22:58:53 PST

It would be nice if packaging were documented somewhere more obvious - since previous version of MQ Client unbundled extended transaction client and documents confuse.

Found IBM forum response http://www-01.ibm.com/support/docview.wss?rs=171&uid=swg1IZ33828 says
After installing WebSphere MQ Version 7 on Unix platforms, the
file com.ibm.mqetclient.jar is missing. The file is installed
correctly on Windows platforms

I copied jar to wrong mqm path /opt/mqm/opt - making dependencies less obvious.

It says
Copy the supplied com.ibm.mqetclient.jar to /opt/mqm/java/lib/

I suspected noclassdef errors e.g. com.ibm.mq.MQEnvironment

So did quick search and find easy enough match
bpdevraam01-dev07:/opt/mqm/java/lib# jar -tf /opt/mqm/java/lib/com.ibm.mq.jar | grep "com/ibm/mq/MQEnv"
com/ibm/mq/MQEnvironment$1.class
com/ibm/mq/MQEnvironment$2.class
com/ibm/mq/MQEnvironment$3.class
com/ibm/mq/MQEnvironment$4.class
com/ibm/mq/MQEnvironment$5.class
com/ibm/mq/MQEnvironment.class

So looks like might resolve problems by copying com.ibm.mqetclient.jar to correct folder /opt/mqm/java/lib/ and adding right jars to classpath including com.ibm.mq.jar

Will retry adding following IBM jars to server classpath.

I get hermes working as java client in windows using
<wasmqcbase>\WebSphere MQ\java\lib\com.ibm.mq.commonservices.jar
<wasmqcbase>\WebSphere MQ\java\lib\com.ibm.mq.jar
<wasmqcbase>\WebSphere MQ\java\lib\com.ibm.mq.pcf.jar
<wasmqcbase>\WebSphere MQ\java\lib\com.ibm.mqjms.jar

While rar already includes com.ibm.mq.jar (missing com.ibm.mqetclient.jar may not share module specific). Rar deploys
com.ibm.mq.jar
com.ibm.mqjms.jar
dhbcore.jar
mqconnector.jar

But rar does not add to server classpath … only module jar that is not visible to server.
# grep "mq/" /var/opt/SUNWappserver/domains/domain1/config/domain.xml
#

# find /var/opt/SUNWappserver/domains/domain1 -name "com.ibm.mq.jar" -print
/var/opt/SUNWappserver/domains/domain1/applications/j2ee-modules/wmqjmsra/com.ibm.mq.jar

 

Which of rest are needed by com.ibm.mqetclient.jar (will try and eliminate from following)
        /opt/mqm/java/lib/com.ibm.mq.jar
        /opt/mqm/java/lib/com.ibm.mq.jms.Nojndi.jar
        /opt/mqm/java/lib/com.ibm.mq.soap.jar
        /opt/mqm/java/lib/com.ibm.mqjms.jar
        /opt/mqm/java/lib/com.ibm.mqetclient.jar
        /opt/mqm/java/lib/commonservices.jar
        /opt/mqm/java/lib/dhbcore.jar
        /opt/mqm/java/lib/rmm.jar
        /opt/mqm/java/lib/providerutil.jar
        /opt/mqm/java/lib/CL3Export.jar
        /opt/mqm/java/lib/CL3Nonexport.jar

Full list is as follows
# ls /opt/mqm/java/lib
CL3Export.jar com.ibm.mq.jar com.ibm.mqjms.jar dhbcore.jar jndi.jar libPgmIpLayer.so providerutil.jar
CL3Nonexport.jar com.ibm.mq.jms.Nojndi.jar commonservices.jar egrep jca jta.jar libmqjexitstub01.so rmm.jar
OSGI com.ibm.mq.soap.jar connector.jar fscontext.jar jms.jar ldap.jar postcard.jar soap

So will retry adding some jars from /opt/mqm/java/lib of mq install to classpath in case mq client does indeed bundle extended tx support.

Still interested in other deployments and if anyone knows where get extended tx
[Message sent by forum member 'kennwoods' (ken.woods_at_digitalidols.com)]

http://forums.java.net/jive/thread.jspa?messageID=387317