无法在 WSO2 IoT 服务器中配置 JMS 队列:缺少文档

Not able to configure JMS queue in WSO2 IoT server : missing documentation

我在 JMS 队列接收器中使用以下设置,使用给定的设置 here

 <property name="java.naming.factory.initial">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</property>
    <property name="java.naming.provider.url">repository/conf/jndi.properties</property>
    <property name="transport.jms.ConnectionFactoryJNDIName">TopicConnectionFactory</property>
    <property name="transport.jms.UserName">admin</property>

我收到以下错误

Caused by: javax.naming.NoInitialContextException: Failed to create InitialContext using factory specified in hash table. [Root exception is java.lang.ClassNotFoundException: class org.wso2.andes.jndi.PropertiesFileInitialContextFactory not found]
    at org.wso2.carbon.context.internal.CarbonContextDataHolder$CarbonInitialJNDIContextFactoryBuilder.createInitialContextFactory(CarbonContextDataHolder.java:491)
    at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:681)
    at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:313)
    at javax.naming.InitialContext.init(InitialContext.java:244)
    at javax.naming.InitialContext.<init>(InitialContext.java:216)
    at org.wso2.carbon.event.output.adapter.jms.internal.util.JMSConnectionFactory.<init>(JMSConnectionFactory.java:84)

谁能告诉我正确的方向。

这个异常给了我们一个很大的提示,让我们知道是什么导致了这个问题。

Root exception is java.lang.ClassNotFoundException: class org.wso2.andes.jndi.PropertiesFileInitialContextFactory not found

好像少了一个库。 该指南提到复制包含 PropertiesFileInitialContextFactory class.

的 andes-client jar

WSO2 ESB needs some libraries to communicate with WSO2 Message Broker. They are available in [MB_HOME]/client-lib folder. Following libraries should be copied to [ESB_HOME]/repository/components/lib folder.

andes-client-0.13.wso2v3

geronimo-jms_1.1_spec-1.1.0.wso2v1

问题已解决。请在我的 blog post.

上找到答案