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

标签 java tomcat jakarta-ee jms spring-jms

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

环境:

Tomcat 6,Jdk_6.45, 已添加:com.ibm.mq.jar、com.ibm.mqjms.jar、

上下文.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>

异常:

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

最佳答案

经过this link之后, 我添加了 J2ee.jar [没有 servlet 包|在我的情况下 (1.4.1) jar 中的文件夹]

它现在正在工作。

如果您在 servlet 文件夹中添加 j2ee jar,tomcat 将忽略它,jar 未加载。请参阅 Servlet 规范 3.0,第 10.7.2 节。违规类:javax/servlet/..

其实MQQueueConnectionFactory需要javax.resource-api

关于java.lang.NoClassDefFoundError : Could not initialize class com. ibm.mq.jms.MQQueueConnectionFactory 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32888492/

相关文章:

java - 使用 swagger 或任何其他工具生成 Rest API 文档

java - Spring Boot sperate @Configurations 用于多个应用程序上下文

java - Web 服务中的 Spring Autowired 不起作用

javascript - 如何播放字节数组中的音频? (没有网址)

java if语句错误

java - 观察者模式建议

JAVA(数组索引越界异常),Nutanix放置问题

Tomcat:未配置但使用了NIO?

tomcat - 如何在Tomcat中添加自定义 header ?

java - 无法从远程机器联系 EJB