wso2esb主题jms订阅者

时间:2014-02-25 09:02:33

标签: wso2 wso2esb

我正在尝试利用固有的WSO2ESB主题发布到jms队列。我创建了主题并提供了jms的订户URL:/ TOPICTEST?transport.jms.DestinationType = queue。当我向主题发布消息时,它无法传递到队列中。日志生成以下内容

“系统无法从jms:/ queue?destination = TOPICTEST URL推断传输信息。”

正确设置JMS以使用activeMQ,我能够从常规代理服务传送到队列而不会出现问题。

此外,我似乎无法解决如何发布到WSO2ESB主题的问题,有人知道交付网址应该是什么样的吗?从我看过的任何文档中都不清楚,他们似乎总是使用WSO2ESB管理控制台附带的测试客户端。

感谢 保罗

3 个答案:

答案 0 :(得分:0)

从Siriwardena,Prabath的“与WSO2 ESB的企业集成”中提取的示例:

<send>
<endpoint>
<address uri="jms:/emirates?transport.jms.DestinationType=queue&amp;transport.jms.ContentTypeProperty=contentType&amp;java.naming.provider.url=tcp://localhost:61616&amp; java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;transport.jms.ConnectionFactoryType=queue&amp; transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory"/>
</endpoint>
</send>

答案 1 :(得分:0)

您可以根据需要找到以下示例。 http://docs.wso2.org/display/ESB460/Publish-Subscribe+(Pub-Sub)+with+JMS

正如它所述,你需要按如下方式定义端点,

<endpoint>
    <address uri="jms:/SimpleStockQuoteService?transport.jms.ConnectionFactoryJNDIName=TopicConnectionFactory&amp;java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;java.naming.provider.url=tcp://localhost:61616&amp;transport.jms.DestinationType=topic"/>
 </endpoint>

答案 2 :(得分:0)

我不确定我是否理解你要做的事情,你可能在配置中犯了错误吗?

而不是

JMS:/?TOPICTEST transport.jms.DestinationType =队列

它应该是主题

JMS:/?TOPICTEST transport.jms.DestinationType =主题