WSO2 ESB是否可以在JMS代理之间发送JMS消息?

WSO2 ESB是否可以在JMS代理之间发送JMS消息?,jms,wso2,activemq,wso2esb,Jms,Wso2,Activemq,Wso2esb,我有一个服务正在侦听一个队列,我想将消息转发给一个完全不同的代理。这在WSO2 ESB中可能吗?如果可能,该如何进行配置?我尝试使用另一个代理的传输url指定端点,但没有成功…以下是我用于从JMS队列中选择并发布到另一个队列(在ActiveMQ JMS提供程序上)的WSO2 ESB代理服务配置: 30000 过错 0 1 0 内容类型 文本/纯文本;字符集=ISO-8859-1 myQueueConnectionFactory 队列 源\队列\名称 不要忘记在Configure->Trans

我有一个服务正在侦听一个队列,我想将消息转发给一个完全不同的代理。这在WSO2 ESB中可能吗?如果可能,该如何进行配置?我尝试使用另一个代理的传输url指定端点,但没有成功…

以下是我用于从JMS队列中选择并发布到另一个队列(在ActiveMQ JMS提供程序上)的WSO2 ESB代理服务配置:


30000
过错
0
1
0
内容类型
文本/纯文本;字符集=ISO-8859-1
myQueueConnectionFactory
队列
源\队列\名称
不要忘记在Configure->Transports菜单下启用JMS传输发送器。另外,
myQueueConnectionFactory
引用了在Configure->Transports->JMS Transport Listener下设置的参数


更新:WSO2 ESB的较新版本将没有GUI选项来启用/禁用传输。为此,您必须修改{ESB_ROOT_DIRECTORY}/repository/conf/axis2/axis2.xml文件,并对与您的环境(ActiveMQ、WSO2 MB等)相对应的JMSListener/JMSSender取消注释。

以下是我用于从JMS队列中选择并发布到另一个队列(在ActiveMQ JMS提供程序上)的WSO2 ESB代理服务配置:


30000
过错
0
1
0
内容类型
文本/纯文本;字符集=ISO-8859-1
myQueueConnectionFactory
队列
源\队列\名称
不要忘记在Configure->Transports菜单下启用JMS传输发送器。另外,
myQueueConnectionFactory
引用了在Configure->Transports->JMS Transport Listener下设置的参数


更新:WSO2 ESB的较新版本将没有GUI选项来启用/禁用传输。为此,您必须修改{ESB_ROOT_DIRECTORY}/repository/conf/axis2/axis2.xml文件,并对与您的环境(ActiveMQ、WSO2 MB等)相对应的JMSListener/JMSSender取消注释。

这实际上是在两个不同的ActiveMQ代理之间发送流量吗?是,源队列位于JMS传输侦听器的
myQueueConnectionFactory
参数下配置的ActiveMQ实例上,而目标队列位于端点的
address uri
java.naming.provider.url
参数下定义的ActiveMQ实例上。我肯定在某个地方缺少某些配置因为当我这样做的时候,我得到了与之前相同的行为,消息会传递到代理服务正在侦听的代理。。。参数部分中的连接工厂配置是否定义了不同的代理?您的默认值是否设置为不同的值?它现在可以工作了。事实证明,我们定义了一个默认的transportSender,如果我们计划使用此配置,则不应该这样做。谢谢这实际上是在两个不同的activemq代理之间发送流量吗?是的,源队列位于JMS传输侦听器的
myQueueConnectionFactory
参数下配置的ActiveMQ实例上,而目标队列位于端点的
address uri
java.naming.provider.url
参数下定义的ActiveMQ实例上。我肯定在某个地方缺少某些配置因为当我这样做的时候,我得到了与之前相同的行为,消息会传递到代理服务正在侦听的代理。。。参数部分中的连接工厂配置是否定义了不同的代理?您的默认值是否设置为不同的值?它现在可以工作了。事实证明,我们定义了一个默认的transportSender,如果我们计划使用此配置,则不应该这样做。谢谢
<proxy xmlns="http://ws.apache.org/ns/synapse" name="JMS_to_JMS_proxy_service" transports="jms" statistics="disable" trace="disable" startOnLoad="true">
   <target>
      <inSequence>
         <log level="full" separator="," />
         <property name="OUT_ONLY" value="true" scope="default" type="STRING" />
         <send>
            <endpoint>
               <address uri="jms:/Destination_Queue_Name?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&amp;java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&amp;java.naming.provider.url=tcp://Your_Host:61616&amp;transport.jms.DestinationType=queue" trace="disable">
                  <timeout>
                     <duration>30000</duration>
                     <responseAction>fault</responseAction>
                  </timeout>
                  <suspendOnFailure>
                     <initialDuration>0</initialDuration>
                     <progressionFactor>1.0</progressionFactor>
                     <maximumDuration>0</maximumDuration>
                  </suspendOnFailure>
               </address>
            </endpoint>
         </send>
      </inSequence>
   </target>
   <parameter name="transport.jms.ContentType">
      <rules>                              
         <jmsProperty>contentType</jmsProperty>                              
         <default>text/plain; charset=ISO-8859-1</default>                    
      </rules>
   </parameter>
   <parameter name="transport.jms.ConnectionFactory">myQueueConnectionFactory</parameter>
   <parameter name="transport.jms.DestinationType">queue</parameter>
   <parameter name="transport.jms.Destination">Source_Queue_Name</parameter>
</proxy>