java.lang.NoClassDefFoundError:无法初始化类com.ibm.mq.jms.MQQueueConnectionFactory

时间:2015-10-01 13:11:55

标签: java tomcat java-ee jms spring-jms

我在开始我的项目时遇到了问题。

环境:

Tomcat 6,Jdk_6.45, Alredy添加: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>

弹簧:

<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>

例外:

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

1 个答案:

答案 0 :(得分:1)

在浏览this link之后,我添加了 J2ee.jar [在我的案例中没有servlet包|文件夹(1.4.1)]

它现在正在运作。

如果添加带有servlet文件夹的j2ee jar,tomcat将使用jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/..

忽略它

实际上MQQueueConnectionFactory需要 javax.resource-api