Ravi Parekh
Ravi Parekh

Reputation: 5594

java.lang.NoClassDefFoundError: Could not initialize class com.ibm.mq.jms.MQQueueConnectionFactory

I am facing issue while starting my project.

Environment:

Tomcat 6, Jdk_6.45, Alredy added: com.ibm.mq.jar, com.ibm.mqjms.jar,

Context.xml

<Context>
...
<Resource name="jms/sl.mqfactory" type="com.ibm.mq.jms.MQQueueConnectionFactory"
        factory="com.ibm.mq.jms.MQQueueConnectionFactoryFactory" description="JMS Queue Connection Factory"
        HOST="mqqs01.s.abc.co.uk" PORT="53162" CHAN="MQ.CLT.BLP.CHL.DEV"
        TRAN="1" CCS="819" QMGR="QS01" auth="Container" username="" password="" />

</Context>

Spring:

<bean id="jndiConnectionFactory" class="org.springframework.jndi.JndiObjectFactoryBean">
        <property name="jndiName" value="${sl.mqfactory}" /> <!--from properties file -->
        <property name="proxyInterface" value="javax.jms.QueueConnectionFactory"/>
</bean>

Exception:

java.lang.NoClassDefFoundError: Could not initialize class com.ibm.mq.jms.MQQueueConnectionFactory

Upvotes: 1

Views: 6322

Answers (1)

Ravi Parekh
Ravi Parekh

Reputation: 5594

After going through this link, I added J2ee.jar [without servlet package|folder in jar in my case(1.4.1) ]

And It's working now.

if you add j2ee jar with servlet folder tomcat will ignore it with jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/..

Actually MQQueueConnectionFactory needs javax.resource-api

Upvotes: 1

Related Questions