如何在 wso2 esb 中使用两个不同的队列

How to use two differnet queues in wso2 esb


我在 WSO2 ESB 中配置了 Websphere MQ 和 Active MQ。我想从 Websphere MQ 获取消息并将其发送到 ActiveMQ。当我使用 Websphere MQ Queue 名称获取消息时,它会自动在 ActiveMQ 中创建一个 Queue 并发送它而不访问 Websphere MQ。如何使用我提到的两个不同的队列?

我的代理从队列中读取消息:

<proxy name="read_from_MQ" transports="jms" startOnLoad="true" trace="disable">
  <description/>
  <target>
    <inSequence>
      <log level="full" />
      <store messageStore="JMSMS" />
      <!--ActiveMQ message store-->
    </inSequence>
  </target>
  <parameter name="transport.jms.Destination">QUEUE</parameter>
  <!-- Webshpere MQ Queue but it creates a new one in ActiveMQ -->
</proxy>

谢谢。

您的用例是从 Webshpere MQ 队列中挑选消息并将其存储在 ActiveMQ 消息存储中。您是否在 $ESB_HOME/repository/axis2/axis2.xml 中为 ActiveMQ 配置了监听器和发送器?如果你这样做了,你需要恢复它们。您只需要设置代理服务器本身,不需要在 axis2.xml 中为消息存储配置侦听器和发送器。在您的情况下,您只需要为 Webshpere MQ Queue 配置这些,而不是为 ActiveMQ 配置。请通过 [1] 了解更多详细信息(特别是 Configure the Broker Server 部分)

[1] https://docs.wso2.com/display/ESB481/Store+and+Forward+Using+JMS+Message+Stores