我正在尝试将worklight jms adpater与Websphere MQ Provider一起使用。 遵循的步骤: 在WMQ V7.0 Explorer中,右键单击JMS Administered Objects - >添加初始背景 - >选择 文件系统 - >在Bindings目录中输入名称(C:/ JNDI_Directory) - >给 上下文昵称(文件:/ C:/ JNDI_Directory /)并单击“完成”。
In connectionFactory, the context nickname will be set as file:/C:/JNDI_Directory/ -> then click on New -> Gave connection factory name (JMSConnectionFactory)
and select messaging provider as, Websphere MQ -> select the connection factory -> select transport as MQ Client ->
Select base queue manager(JMS_QMGR) and connection list(localhost(2525)) in the connection tab.
In Destination -> new -> Destination -> enter the name of destination(JMSDestination) and type of queue -> select Queue Manager and queue in general tab
In Worklight creating worklight project name as TestJMSAdapter and created a jms adapter(JMSAdapter), configured the following in JMSAdapter.xml file.
<namingConnection url="file:/C:/JNDI_Directory/" initialContextFactory="com.sun.jndi.fscontext.RefFSContextFactory"/>
<jmsConnection connectionFactory="JMSConnectionFactory" />
In JMSAdapter-impl.js, configure the destination as follows,
readMessage(){
return WL.Server.readSingleJMSMessage({
destination: "JMSDestination",
timeout: 60
});
}
从/ WebSphere MQ / java / lib中获取所有jar,在lib文件夹中添加以下jar:
/TestJMSAdapter/server/lib/com.ibm.mq.commonservices.jar
/TestJMSAdapter/server/lib/com.ibm.mq.headers.jar
/TestJMSAdapter/server/lib/com.ibm.mq.jar
/TestJMSAdapter/server/lib/com.ibm.mq.jmqi.jar
/TestJMSAdapter/server/lib/com.ibm.mq.jms.Nojndi.jar
/TestJMSAdapter/server/lib/com.ibm.mqjms.jar
/TestJMSAdapter/server/lib/dhbcore.jar
/TestJMSAdapter/server/lib/fscontext.jar
/TestJMSAdapter/server/lib/jms.jar
/TestJMSAdapter/server/lib/jndi.jar
/TestJMSAdapter/server/lib/providerutil.jar
我正在使用worklight v6并部署在(WebSphere Application Server V8.5 Liberty)Worklight Development Server中。
在调用该过程时,它显示以下错误:
Worklight Development Server控制台中的错误是
[ERROR ] FWLSE0005W: JMS connection exception received: com.ibm.mq.jms.MQConnectionFactory cannot be cast to javax.jms.ConnectionFactory. Closing the connection. [project TestJMSAdapter]
请帮帮我。
答案 0 :(得分:0)
您看到的错误通常是由于将错误的jar添加到您的项目中引起的。
您有两种选择:
我认为造成问题的jar是“jms.jar”文件。删除该文件,然后重试。
所有类加载问题都已在最新版本的worklight中修复,因此无论包含哪些jar,它都应该可以正常工作。