问题描述
我在使用 log4j 1.2.17 将消息发送到 IBM MQ 主题的 IBM WebSphere Application Server 9.0.5.5 上运行时遇到了一些困难。
在 WAS 中,我们最初设置了一个 ConnectionFactory
用于与主题进行通信。这就是我们对使用 IBM MQ 队列的其他应用程序所做的。但是,这最终给了我以下错误:
java.lang.classCastException: com.ibm.ejs.jms.JMSConnectionFactoryHandle incompatible with javax.jms.TopicConnectionFactory
我发现了一篇 IBM 文章,该文章讨论了队列的类似问题,解决方案是使用 QueueConnectionFactory
。因此,类似地,我从使用 ConnectionFactory
切换到 TopicConnectionFactory
。现在我收到此错误:
java.lang.classCastException: com.ibm.ejs.jms.JMSTopicConnectionFactoryHandle incompatible with javax.jms.TopicConnectionFactory
我有另一个 Java Web 应用程序,它使用带有队列的 log4j2。我们在资源 > JMS 中的 WAS 中设置了一个 ConnectionFactory
,就像我们在此应用程序中所做的那样。一切正常。这里唯一的区别是我们使用的是 log4j 1.2.17 和主题而不是队列。
我无法更改 log4j 的版本,因为它已融入我们拥有的供应商平台。
我检查了正在部署的 WAR 文件,其中只有一个 jms.jar
(以及 fscontext、providerutil、mq 等 IBM MQ Client 9.1.0.0 的 JAR)。因此,没有其他可能属于旧 JMS 版本的竞争 jms.jar
。
知道这里可能有什么问题吗?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)