麻烦:WAS - 带有 JMS 适配器的 Worklight

Posted

技术标签:

【中文标题】麻烦:WAS - 带有 JMS 适配器的 Worklight【英文标题】:trouble : WAS - Worklight with JMS adapter 【发布时间】:2013-12-13 13:28:32 【问题描述】:

我开发了一个 Worklight (v6) 应用程序。 Worklight 服务器在 Websphere Application Server 8.5.5(JMS 提供程序)上运行。

当我调用我的适配器时,我在 WAS 日志中得到了这个异常:

[12/13/13 13:20:02:860 CET] 00000093 JMSConnection E com.worklight.adapters.jms.JMSConnectionManager onException FWLSE0005W:收到 JMS 连接异常:com.ibm.ws.sib.api.jms。 impl.JmsManagedConnectionFactoryImpl 与 javax.jms.ConnectionFactory 不兼容。关闭连接。 [项目测试JMS]

我遵循了 2 种方法来制作我的 JMS 队列、连接工厂等。

http://pic.dhe.ibm.com/infocenter/iisinfsv/v8r7/index.jsp?topic=%2Fcom.ibm.swg.im.iis.infoservdir.user.doc%2Ftopics%2Ft_isd_user_creating_jms_que_cx_fact.html(从主题 1 到 5)

还有这个:

https://www.ibm.com/developerworks/community/wikis/home?lang=en#!/wiki/Worklight%20and%20Application%20Center%20advanced%20tutorials/page/Worklight%20JMS%20adapter%20-%20Using%20the%20Liberty%20Profile%20integration%20with%20the%20WAS%20full%20profile%20SIBus

两个教程是相似的(使用 WAS 完整配置文件)。就我而言,队列是本地的(Woklight 和队列在 WAS 中)。因此,我在我的 JMS 适配器中添加了注释“namingConnection”标签。

但我不明白为什么我会得到这个异常。这似乎是classcast Exception。但是如何解决这个问题呢?

提前感谢

【问题讨论】:

您能否发布您正在使用的 Worklight 的完整版本(包括内部版本号)?这是在以后的版本中修复的缺陷。如果无法升级,有一些解决方法,但如果我知道您使用的 Worklight 版本,我可以更好地帮助您。 版本是6.0.0.20130614-0631。 【参考方案1】:

6.0.0.20130614-0631 版本的 worklight 中仍然存在此缺陷。您需要升级到 6.0.0.1 (20130909-1459) 修复包才能获得修复。

如果升级不是一个选项,有一个 hacky 变通办法,确实可以在没有不良副作用的情况下工作。

编辑:

使用 6.0.020130926 代替 Idan 提到的上述版本。

【讨论】:

最好升级到6.0.020130926,这是官方的6.0.0.1 fix pack 1。 谢谢伊丹。我去检查了包含修复程序的确切版本,但官方版本更好。

以上是关于麻烦:WAS - 带有 JMS 适配器的 Worklight的主要内容,如果未能解决你的问题,请参考以下文章

我可以在 MDB 中获取源 JMS 会话吗?

sublime text : The emmet plugin doesn't work when tab key was pressed

通过 Spring 集成入站适配器接收 JMS 消息随机失败

为第三方 JMS 提供者使用 JBoss 的通用资源适配器的缺点

JMS 传输与 MQ 传输

在 java 1.7 中将 JMS 出站通道适配器转换为等效的 Spring Integration DSL