WSO2 ESB填充JMS消息存储配置问题

时间:2014-07-29 16:09:17

标签: java wso2 wso2esb

我正在尝试从WSO2 ESB填充JMS消息存储库。

我为邮件存储设置了以下配置...

<messageStore name="JMSMS" class="org.apache.synapse.message.store.impl.jms.JmsStore" 
xmlns="http://ws.apache.org/ns/synapse">
    <parameter name="java.naming.factory.initial">org.wso2.andes.jndi.PropertiesFileInitialContextFactory
    </parameter>
    <parameter name="java.naming.provider.url">repository/conf/jndi.properties</parameter>
    <parameter name="store.jms.destination">JMSMS</parameter>
    <parameter name="store.jms.username">admin</parameter>
    <parameter name="store.jms.password">admin</parameter>
    <parameter name="store.jms.JMSSpecVersion">1.1</parameter>

当我启动ESB时,我收到以下错误: -

  

[2014-07-29 16:43:45,633]错误 - JmsStore商店[JMSMS]。不能   创建与代理的新连接。初始背景   工厂:[org.apache.qpid.jn di.PropertiesFileInitialContextFactory];   提供者URL:[repository / conf / jndi.properties];连接   工厂:[空]

我已使用上面的java.naming.factory.initial成功连接到标准Message Broker队列作为端点,而不通过Message存储。

我也尝试将java.naming.factory.initial的值更改为org.apache.qpid.jndi.PropertiesFileInitialContextFactory,但会出现同样的错误。

有没有人知道我缺少哪些配置或文件?

干杯 MACCA

更新

以下是我正在使用的jndi.properties和axis2.xml配置

JNDI.Properties

connectionfactory.ConnectionFactory = amqp://admin:admin@clientID/carbon?brokerlist='tcp://inf02-3:5673'

queue.JMSMS=JMSMS

axis2.xml

<transportSender name="jms" class="org.apache.axis2.transport.jms.JMSSender"> 
    <parameter name="default" locked="false"> 
        <parameter name="java.naming.factory.initial" locked="false">org.wso2.andes.jndi.PropertiesFileInitialContextFactory</parameter> 
        <parameter name="java.naming.provider.url" locked="false">repository/conf/jndi.properties</parameter> 
        <parameter name="transport.jms.ConnectionFactoryJNDIName" locked="false">ConnectionFactory</parameter> 
    </parameter> 
</transportSender>

2 个答案:

答案 0 :(得分:2)

您获得错误的原因&#34;连接工厂:[null]&#34;是ESB_HOME / repository / conf / jndi.properties中的miss配置。

请重新检查一下,你可以在wso2库上找到一篇非常好的文章 - configuring wso2 esb with wso2 message broker

答案 1 :(得分:1)

我对这个问题有另一种解释。我遇到了我在新设置的UAT机器上部署我的工作的情况。测试开始时,我立即开始收到“连接工厂:[null]”问题。 我在所有配置上调查了几个小时,结果发现我忘了将两个* jar文件复制到[ESB_HOME] \ repository \ components \ lib

我希望它有所帮助。