我有一个简单的流,它从activemq1读取并解析消息中的id并将id发送到另一个activemq2。
以下是写入activemq1的消息示例:
<Customer>
<Order>
<id>123</id>
</Order>
<Customer>
我需要解析上面邮件正文中的id并将以下消息发送到activemq2:
"Order with id{123} has been queued"
这是我提出的流程,但它将完整的请求xml写入队列,但不是我要查找的消息:
<from uri="jms:queue:Q.activemq1"/>
<setBody>
<xpath>"/Customer/Order/id/@value/text()"</xpath>
</setBody>
<to uri="jms:queue:Q.activemq2"/>
上述任何错误或任何更正
答案 0 :(得分:4)
使用
<route>
<from uri="jms:queue:Q.activemq1" />
<setBody>
<xpath resultType="java.lang.String">/Customer/Order/id/text()</xpath>
</setBody>
<setBody>
<simple>Order with ${body} has been queued</simple>
</setBody>
<log message="${body}"/>
</route>
打印
Order with 123 has been queued