Atomikos Forum |
|
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.
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
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.
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. |