Atomikos Forum

MQ

I followed the example on the site for integrating Tomcat 6 with MQSeries, but am receiving a classcast exception.

My context.xml looks like:

<Resource
name="jms/MQPutQCF"
auth="Container"
type="com.atomikos.jms.AtomikosConnectionFactoryBean"
factory="com.atomikos.tomcat.EnhancedTomcatAtomikosBeanFactory"
uniqueResourceName="MQPutQCF_MQSeries_XA_RMI"
xaConnectionFactoryClassName="com.ibm.mq.jms.MQXAQueueConnectionFactory"
xaProperties.queueManager="valid_queue_manager"
xaProperties.hostName="valid_home_name"
xaProperties.port="17800"
xaProperties.channel="17800"
maxPoolSize="3"
minPoolSize="1" />

My code is as follows (Used the example based on ActiveMQ):

InitialContext ctx = new InitialContext();
        Context context = (Context)ctx.lookup("java:comp/env");
    
        //NOTE: you can also use the Atomikos QueueConnectionFactoryBean
          //to send messages, but then you have to create and manage connections yourself.
        SingleThreadedJmsSenderTemplate session = null;
        //XXX : PLQ package change for activeMQ 4.1.2
        //create and configure an ActiveMQ factory
        MQXAQueueConnectionFactory xaFactory = (MQXAQueueConnectionFactory) context.lookup("jms/MQPutQCF");

The context.lookup results in the following exception:

com.atomikos.jms.AtomikosConnectionFactoryBean cannot be cast to com.ibm.mq.jms.MQXAQueueConnectionFactory

Do I have something configured incorrectly?

Thanks.
Regina Youdelman Send private email
Wednesday, June 08, 2011
 
 
What you look up under "jms/MQPutQCF" is not an XAConnectionFactoryBean (of IBM) but an AtomikosConnectionFactoryBean (of Atomikos). That is why the cast fails.

Why would you need the XAConnectionFactoryBean anyway? Just cast to AtomikosConnectionFactoryBean instead?

HTH
Guy Pardon Send private email
Wednesday, June 08, 2011
 
 
Thank for the quick response.  I was following the ActiveMQ example which is why I tried that cast.  I changed it and got much further.  Unfortunately I am now receiving an error when I try to send the message. 

Exception =  null
java.lang.NullPointerException
    at com.atomikos.jms.extra.SingleThreadedJmsSenderTemplate.destroy(SingleThreadedJmsSenderTemplate.java:84)
    at com.atomikos.jms.extra.AbstractJmsSenderTemplate.executeCallbackInternal(AbstractJmsSenderTemplate.java:313)
    at com.atomikos.jms.extra.AbstractJmsSenderTemplate.executeCallback(AbstractJmsSenderTemplate.java:344)
    at com.atomikos.jms.extra.AbstractJmsSenderTemplate.sendTextMessage(AbstractJmsSenderTemplate.java:408)
    at QueueServlet.sendMessageInTransaction(QueueServlet.java:140)
    at QueueServlet.doGet(QueueServlet.java:44)

Here is my code:

Main Class:

try{
        //create a reusable sender session
        SingleThreadedJmsSenderTemplate senderSession = createSenderTemplate ( );

        //our sender session is self-maintaining, so the following
        //can be repeated as many times as you like
              sendMessageInTransaction ( "Test Message" , senderSession );
       
        System.out.println ( "Sent message with text: " + "Test Message" );

        //when finished: close the sender session
        senderSession.close();
        }
        catch (Exception e)
        {
            System.out.println("Exception =  " + e.getMessage());
            e.printStackTrace();
        }

public static SingleThreadedJmsSenderTemplate  createSenderTemplate ( )
    throws Exception
    {
        
        InitialContext ctx = new InitialContext();
        Context context = (Context)ctx.lookup("java:comp/env");
    
        SingleThreadedJmsSenderTemplate session = new SingleThreadedJmsSenderTemplate();
        AtomikosConnectionFactoryBean xaFactory = (AtomikosConnectionFactoryBean) context.lookup("jms/MQPutQCF");     

        Queue queue = (Queue) context.lookup("jms/DI.DL.COM.TEST_put");
    xaFactory.setUniqueResourceName("DI.DL.COM.TEST_put" + "Resource");

           
        //setup the Atomikos session for sending messages on
        session.setAtomikosConnectionFactoryBean ( xaFactory );
        session.setDestination ( queue );
        session.init();
       
    
    }

public static void sendMessageInTransaction ( String text , SingleThreadedJmsSenderTemplate sender )
    throws Exception
    {
        //get a handle to the Atomikos transaction service
        UserTransactionImp userTransaction = new UserTransactionImp();

        userTransaction.setTransactionTimeout ( 120 );
       
        //start a transaction to send in
        userTransaction.begin();
       
        //send a message
        sender.sendTextMessage ( text );

        //commit means send, rollback means cancel
        userTransaction.commit();       
    }
}

It if failing on        sender.sendTextMessage ( text ); in the method above.

Any assistance is greatly appreciated.

Thanks.
Regina Youdelman Send private email
Thursday, June 09, 2011
 
 
What Atomikos version are you using?
Guy Pardon Send private email
Thursday, June 09, 2011
 
 
Tomcat 6.0.26
Atomikos 3.7
Java 6
Regina Youdelman Send private email
Thursday, June 09, 2011
 
 
Does the tm.out have any related error?
Guy Pardon Send private email
Thursday, June 09, 2011
 
 
Here is the output which indicates a missing jar file.  What additional jars are necessary to use Atomikos?  I am able to connect if I used straight JMS but of course I don't get the transaction features I am looking for.

I have the following jars in /lib:

(prefaced with com.ibm)
mq.commonservices
mq.headers
mq
mq.jmqi
mq.jms.nojndi
mq.pcf
mq.soap
mqetclient
mqjms


11-06-10 08:06:57,071 [http-8082-2] cannot load SLF4J, skipping this console
java.lang.ClassNotFoundException: org.slf4j.Logger
    at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    at java.lang.Class.forName0(Native Method)
    at java.lang.Class.forName(Class.java:169)
    at com.atomikos.icatch.standalone.UserTransactionServiceImp.createDefault(UserTransactionServiceImp.java:200)
    at com.atomikos.icatch.standalone.UserTransactionServiceImp.init(UserTransactionServiceImp.java:306)
    at com.atomikos.icatch.config.UserTransactionServiceImp.init(UserTransactionServiceImp.java:413)
    at com.atomikos.icatch.jta.UserTransactionImp.checkSetup(UserTransactionImp.java:99)
    at com.atomikos.icatch.jta.UserTransactionImp.setTransactionTimeout(UserTransactionImp.java:170)
    at QueueServlet.sendMessageInTransaction(QueueServlet.java:134)
    at QueueServlet.doGet(QueueServlet.java:44)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at com.homedepot.ta.aa.dao.catalina.THDDAOValve.invoke(THDDAOValve.java:876)
    at com.homedepot.ta.aa.catalina.realm.THDSingleSignOn.invoke(THDSingleSignOn.java:473)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:619)
11-06-10 08:06:57,178 [http-8082-2] Starting read of logfile c:\logs\tmlog2.log
11-06-10 08:06:57,178 [http-8082-2] Done read of logfile
11-06-10 08:06:57,179 [http-8082-2] Logfile closed: c:\logs\tmlog2.log
11-06-10 08:06:57,221 [http-8082-2] Installing recovery service on resource MQPutQCF_MQSeries_XA_RMI
11-06-10 08:06:57,221 [http-8082-2] MQPutQCF_MQSeries_XA_RMI: refreshing XAResource...
11-06-10 08:06:57,223 [http-8082-2] ERROR IN RECOVERY
com.atomikos.datasource.ResourceException: Error in getting XA resource
    at com.atomikos.datasource.xa.jms.JmsTransactionalResource.refreshXAConnection(JmsTransactionalResource.java:122)
    at com.atomikos.datasource.xa.XATransactionalResource.getXAResource(XATransactionalResource.java:373)
    at com.atomikos.datasource.xa.XATransactionalResource.endRecovery(XATransactionalResource.java:655)
    at com.atomikos.icatch.imp.TransactionServiceImp.recover(TransactionServiceImp.java:635)
    at com.atomikos.datasource.xa.XATransactionalResource.setRecoveryService(XATransactionalResource.java:503)
    at com.atomikos.icatch.system.Configuration.installRecoveryService(Configuration.java:278)
    at com.atomikos.icatch.imp.TransactionServiceImp.recover(TransactionServiceImp.java:580)
    at com.atomikos.icatch.imp.TransactionServiceImp.init(TransactionServiceImp.java:741)
    at com.atomikos.icatch.imp.BaseTransactionManager.init(BaseTransactionManager.java:217)
    at com.atomikos.icatch.standalone.StandAloneTransactionManager.init(StandAloneTransactionManager.java:104)
    at com.atomikos.icatch.standalone.UserTransactionServiceImp.init(UserTransactionServiceImp.java:307)
    at com.atomikos.icatch.config.UserTransactionServiceImp.init(UserTransactionServiceImp.java:413)
    at com.atomikos.icatch.jta.UserTransactionImp.checkSetup(UserTransactionImp.java:99)
    at com.atomikos.icatch.jta.UserTransactionImp.setTransactionTimeout(UserTransactionImp.java:170)
    at QueueServlet.sendMessageInTransaction(QueueServlet.java:134)
    at QueueServlet.doGet(QueueServlet.java:44)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at com.homedepot.ta.aa.dao.catalina.THDDAOValve.invoke(THDDAOValve.java:876)
    at com.homedepot.ta.aa.catalina.realm.THDSingleSignOn.invoke(THDSingleSignOn.java:473)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:619)
11-06-10 08:06:57,223 [http-8082-2] MQPutQCF_MQSeries_XA_RMI: refreshing XAResource...
11-06-10 08:06:57,226 [http-8082-2] ERROR IN RECOVERY
com.atomikos.datasource.ResourceException: Error in getting XA resource
    at com.atomikos.datasource.xa.jms.JmsTransactionalResource.refreshXAConnection(JmsTransactionalResource.java:122)
    at com.atomikos.datasource.xa.XATransactionalResource.getXAResource(XATransactionalResource.java:373)
    at com.atomikos.datasource.xa.XATransactionalResource.endRecovery(XATransactionalResource.java:655)
    at com.atomikos.icatch.imp.TransactionServiceImp.recover(TransactionServiceImp.java:635)
    at com.atomikos.icatch.imp.TransactionServiceImp.init(TransactionServiceImp.java:741)
    at com.atomikos.icatch.imp.BaseTransactionManager.init(BaseTransactionManager.java:217)
    at com.atomikos.icatch.standalone.StandAloneTransactionManager.init(StandAloneTransactionManager.java:104)
    at com.atomikos.icatch.standalone.UserTransactionServiceImp.init(UserTransactionServiceImp.java:307)
    at com.atomikos.icatch.config.UserTransactionServiceImp.init(UserTransactionServiceImp.java:413)
    at com.atomikos.icatch.jta.UserTransactionImp.checkSetup(UserTransactionImp.java:99)
    at com.atomikos.icatch.jta.UserTransactionImp.setTransactionTimeout(UserTransactionImp.java:170)
    at QueueServlet.sendMessageInTransaction(QueueServlet.java:134)
    at QueueServlet.doGet(QueueServlet.java:44)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at com.homedepot.ta.aa.dao.catalina.THDDAOValve.invoke(THDDAOValve.java:876)
    at com.homedepot.ta.aa.catalina.realm.THDSingleSignOn.invoke(THDSingleSignOn.java:473)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:619)
11-06-10 08:06:57,226 [http-8082-2] Installing recovery service on resource MQPutQCF_MQSeries_XA_RMI
11-06-10 08:06:57,226 [http-8082-2] MQPutQCF_MQSeries_XA_RMI: refreshing XAResource...
11-06-10 08:06:57,227 [http-8082-2] ERROR IN RECOVERY
com.atomikos.datasource.ResourceException: Error in getting XA resource
    at com.atomikos.datasource.xa.jms.JmsTransactionalResource.refreshXAConnection(JmsTransactionalResource.java:122)
    at com.atomikos.datasource.xa.XATransactionalResource.getXAResource(XATransactionalResource.java:373)
    at com.atomikos.datasource.xa.XATransactionalResource.endRecovery(XATransactionalResource.java:655)
    at com.atomikos.icatch.imp.TransactionServiceImp.recover(TransactionServiceImp.java:635)
    at com.atomikos.datasource.xa.XATransactionalResource.setRecoveryService(XATransactionalResource.java:503)
    at com.atomikos.icatch.system.Configuration.installRecoveryService(Configuration.java:278)
    at com.atomikos.icatch.standalone.UserTransactionServiceImp.init(UserTransactionServiceImp.java:310)
    at com.atomikos.icatch.config.UserTransactionServiceImp.init(UserTransactionServiceImp.java:413)
    at com.atomikos.icatch.jta.UserTransactionImp.checkSetup(UserTransactionImp.java:99)
    at com.atomikos.icatch.jta.UserTransactionImp.setTransactionTimeout(UserTransactionImp.java:170)
    at QueueServlet.sendMessageInTransaction(QueueServlet.java:134)
    at QueueServlet.doGet(QueueServlet.java:44)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at com.homedepot.ta.aa.dao.catalina.THDDAOValve.invoke(THDDAOValve.java:876)
    at com.homedepot.ta.aa.catalina.realm.THDSingleSignOn.invoke(THDSingleSignOn.java:473)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:619)
11-06-10 08:06:57,231 [http-8082-2] USING core version: 3.7.0
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.console_file_name = tm.out
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.console_file_count = 1
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.automatic_resource_registration = true
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.client_demarcation = false
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.threaded_2pc = false
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.serial_jta_transactions = true
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.log_base_dir = c:/logs
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.console_log_level = DEBUG
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.max_actives = 50
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.checkpoint_interval = 500
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.enable_logging = true
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.output_dir = ../work
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.log_base_name = tmlog
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.console_file_limit = -1
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.max_timeout = 300000
11-06-10 08:06:57,232 [http-8082-2] USING com.atomikos.icatch.tm_unique_name = 172.19.195.35.tm
11-06-10 08:06:57,232 [http-8082-2] USING java.naming.factory.initial = com.sun.jndi.rmi.registry.RegistryContextFactory
11-06-10 08:06:57,232 [http-8082-2] USING java.naming.provider.url = rmi://localhost:1099
11-06-10 08:06:57,233 [http-8082-2] USING com.atomikos.icatch.service = com.atomikos.icatch.standalone.UserTransactionServiceFactory
11-06-10 08:06:57,233 [http-8082-2] USING com.atomikos.icatch.force_shutdown_on_vm_exit = false
11-06-10 08:06:57,233 [http-8082-2] USING com.atomikos.icatch.default_jta_timeout = 10000
11-06-10 08:06:57,233 [http-8082-2] getCompositeTransaction() returning NULL!
11-06-10 08:06:57,254 [http-8082-2] Coordinator 172.19.195.35.tm0000100003 entering state: ACTIVE
11-06-10 08:06:57,255 [http-8082-2] (1.5) executing task: com.atomikos.timing.PooledAlarmTimer@1192059
11-06-10 08:06:57,255 [http-8082-2] ThreadFactory: creating new thread: Atomikos:1
11-06-10 08:06:57,255 [http-8082-2] Creating composite transaction: 172.19.195.35.tm0000100003
11-06-10 08:06:57,265 [http-8082-2] createCompositeTransaction ( 120000 ): created new ROOT transaction with id 172.19.195.35.tm0000100003
11-06-10 08:06:57,271 [http-8082-2] getCompositeTransaction()  returning instance with id 172.19.195.35.tm0000100003
11-06-10 08:06:57,271 [http-8082-2] getCompositeTransaction()  returning instance with id 172.19.195.35.tm0000100003
11-06-10 08:06:57,271 [http-8082-2] AtomikosConnectionFactoryBean 'DI.DL.COM.TEST_putResource': createConnection()...
11-06-10 08:06:57,271 [http-8082-2] AtomikosConnectionFactoryBean 'DI.DL.COM.TEST_putResource': init...
11-06-10 08:06:57,271 [http-8082-2] atomikos connection pool 'DI.DL.COM.TEST_putResource': growing pool size to: 1
11-06-10 08:06:57,275 [http-8082-2] Failed to grow the connection pool
com.atomikos.datasource.pool.CreateConnectionException: error creating JMS connection
    at com.atomikos.jms.AtomikosJmsXAConnectionFactory.createPooledConnection(AtomikosJmsXAConnectionFactory.java:61)
    at com.atomikos.datasource.pool.ConnectionPool.growPool(ConnectionPool.java:190)
    at com.atomikos.datasource.pool.ConnectionPool.borrowConnection(ConnectionPool.java:143)
    at com.atomikos.jms.AtomikosConnectionFactoryBean.createConnection(AtomikosConnectionFactoryBean.java:585)
    at com.atomikos.jms.extra.AbstractJmsSenderTemplate.refreshConnection(AbstractJmsSenderTemplate.java:92)
    at com.atomikos.jms.extra.SingleThreadedJmsSenderTemplate.getOrReuseConnection(SingleThreadedJmsSenderTemplate.java:106)
    at com.atomikos.jms.extra.AbstractJmsSenderTemplate.executeCallbackInternal(AbstractJmsSenderTemplate.java:296)
    at com.atomikos.jms.extra.AbstractJmsSenderTemplate.executeCallback(AbstractJmsSenderTemplate.java:344)
    at com.atomikos.jms.extra.AbstractJmsSenderTemplate.sendTextMessage(AbstractJmsSenderTemplate.java:408)
    at QueueServlet.sendMessageInTransaction(QueueServlet.java:140)
    at QueueServlet.doGet(QueueServlet.java:44)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at com.homedepot.ta.aa.dao.catalina.THDDAOValve.invoke(THDDAOValve.java:876)
    at com.homedepot.ta.aa.catalina.realm.THDSingleSignOn.invoke(THDSingleSignOn.java:473)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:619)
Caused by: com.ibm.msg.client.jms.DetailedJMSException: JMSFMQ6312: An exception occurred in the Java(tm) MQI. The Java(tm) MQI has thrown an exception describing the problem.  See the linked exception for further information.
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at com.ibm.msg.client.commonservices.j2se.NLSServices.createException(NLSServices.java:411)
    at com.ibm.msg.client.commonservices.nls.NLSServices.createException(NLSServices.java:390)
    at com.ibm.msg.client.wmq.factories.WMQXAConnectionFactory.createV7ProviderConnection(WMQXAConnectionFactory.java:163)
    at com.ibm.msg.client.wmq.factories.WMQConnectionFactory.createProviderConnection(WMQConnectionFactory.java:7396)
    at com.ibm.msg.client.wmq.factories.WMQXAConnectionFactory.createProviderXAConnection(WMQXAConnectionFactory.java:101)
    at com.ibm.msg.client.jms.admin.JmsConnectionFactoryImpl.createXAConnectionInternal(JmsConnectionFactoryImpl.java:332)
    at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAQueueConnection(MQXAQueueConnectionFactory.java:138)
    at com.ibm.mq.jms.MQXAQueueConnectionFactory.createXAConnection(MQXAQueueConnectionFactory.java:92)
    at com.atomikos.jms.AtomikosJmsXAConnectionFactory.createPooledConnection(AtomikosJmsXAConnectionFactory.java:58)
    ... 26 more
Caused by: com.ibm.mq.jmqi.JmqiException: CC=2;RC=2495;AMQ8568: The native JNI library 'mqjbnd' was not found. [3=mqjbnd]
    at com.ibm.mq.jmqi.local.LocalMQ$1.run(LocalMQ.java:252)
    at java.security.AccessController.doPrivileged(Native Method)
    at com.ibm.mq.jmqi.local.LocalMQ.initialise_inner(LocalMQ.java:216)
    at com.ibm.mq.jmqi.local.LocalMQ.initialise(LocalMQ.java:178)
    at com.ibm.mq.jmqi.local.LocalMQ.<init>(LocalMQ.java:885)
    at com.ibm.mq.jmqi.local.LocalServer.<init>(LocalServer.java:128)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at com.ibm.mq.jmqi.JmqiEnvironment.getInstance(JmqiEnvironment.java:637)
    at com.ibm.mq.jmqi.JmqiEnvironment.getMQI(JmqiEnvironment.java:572)
    at com.ibm.msg.client.wmq.factories.WMQXAConnectionFactory.createV7ProviderConnection(WMQXAConnectionFactory.java:155)
    ... 32 more
Caused by: java.lang.UnsatisfiedLinkError: no mqjbnd in java.library.path
    at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1734)
    at java.lang.Runtime.loadLibrary0(Runtime.java:823)
    at java.lang.System.loadLibrary(System.java:1028)
    at com.ibm.mq.jmqi.local.LocalMQ.loadLib(LocalMQ.java:852)
    at com.ibm.mq.jmqi.local.LocalMQ$1.run(LocalMQ.java:231)
    ... 44 more

Thanks for your assistance.
Regina Youdelman Send private email
Friday, June 10, 2011
 
 
I was able to get past this error by adding the following to my jndi definition:

xaProperties.transportType="1"

Thanks.
Regina Youdelman Send private email
Friday, June 10, 2011
 
 
Cool - thanks for the update!
Guy Pardon Send private email
Tuesday, June 14, 2011
 
 

This topic is archived. No further replies will be accepted.

Other recent topics Other recent topics