通过Camel从ActiveMQ消息中提取正文

时间:2016-06-06 17:40:15

标签: apache-camel activemq

我有一条使用Spring DSL的路线

<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring">
  <route>
    <from uri="activemq:queue:worker?mapJmsMessage=false" />
    <convertBodyTo type="java.lang.String"/>
    <setHeader headerName="CamelHttpMethod">
      <constant>POST</constant>
    </setHeader>
    <to uri="http://localhost/queue" />
  </route>
</camelContext>

消息类型是ActiveMQTextMessage。我能够将消息发布到HTTP URL,但我得到的似乎是toString()输出:

ActiveMQTextMessage {commandId = 5, responseRequired = false, message....

我想调用ActiveMQTextMessage实例上的getText()方法来填充路由,但我无法弄清楚如何调用该方法。我很确定我可以在代码中使用它,但我需要通过XML完成所有工作。

1 个答案:

答案 0 :(得分:0)

找出问题所在。几天前我将mapJmsMessage = false设置为处理异常。我删除它,突然它工作正常。