如何使用WSO2 ESB将消息格式设置为MQSTR

时间:2015-10-27 20:07:07

标签: jms wso2 esb mq

我正在使用WSO2 ESB 4.9通过.bindings文件连接到WebSphere MQ队列。默认情况下,WSO2 ESB通过JMS以MQHRF2格式发送MQ消息。如何配置WSO2 ESB以便它以MQSTR格式发送MQ消息,类似于以下Java编码:

Queue myQueue = session.createQueue("queue:///myQueue?targetClient=1");

((MQQueue) queue).setTargetClient(JMSC.MQJMS_CLIENT_NONJMS_MQ);

非常感谢提前!

以下是我在WSO2 ESB上按照以下建议配置的代理的一部分:

     <outSequence>
     <property name="TRANSPORT_HEADERS" scope="axis2" action="remove"/>
     <property name="messageType" value="text/plain" scope="axis2"/>
     <property name="JMS_IBM_Format"
               value="MQSTR"
               scope="transport"
               type="STRING"/>
     <send/>
  </outSequence>
  <endpoint>
     <address uri="jms:/xxxx?transport.jms.ConnectionFactoryJNDIName=..."
              format="soap11"/>
  </endpoint>

以下属性设置用于从上游(JSON / HTTP)中删除不需要的HTTP头信息,方法是不将其发送到下游(XML / JMS):

<property name="TRANSPORT_HEADERS" scope="axis2" action="remove"/>

1 个答案:

答案 0 :(得分:0)

您可以尝试在将其发送到MQ之前添加以下属性。

 <property name="JMS_IBM_Format"
               value="MQSTR"
               scope="transport"
               type="STRING"/>
<send>
    <!-- your MQ endpoint here -->
</send>