如何在FUSE ESB中使用setProperty

时间:2015-08-13 08:05:30

标签: xml xpath jboss apache-camel fuseesb

我有以下XML:

<sam:Order>
   <Order1>
   <OrderNo>12345</OrderNo>
    <OrderDate>13-08-2015</OrderDate>
    <OrderMode>online</OrderMode>
    </Order1>
 </sam:Order>

我的骆驼路线:

  <setProperty propertyName="IncomingSoapMessage">
                <xpath  xmlns:sam="http://Order.com/">/sam:Order</xpath>
  </setProperty>
  use enrich/split.... some any components....      

  <log message="${body}"/>

那么,使用setProperty是否正确?属性“IncomingSoapMessage”必须具有以下XML

<Order1>
<OrderNo>12345</OrderNo>
<OrderDate>13-08-2015</OrderDate>
<OrderMode>online<OrderMode>
</Order1>

此属性也应该是上下文中的当前消息(简单来说,它应该是有效负载)。即;当我使用$ {body}记录消息时,我应该能够将XML视为

   <Order1>.....</Order1>

请建议我解决这个问题!如有任何澄清,请发表评论..

1 个答案:

答案 0 :(得分:0)

我认为他要求逻辑从XML中检索子元素并将其保留在流程中。

/concept/foo

将其修改为:

RewriteCond %{QUERY_STRING} ^id=([\w-]*)
RewriteRule ^([\w-]+)$ /$1/%1? [R,L]

并发送进一步的驼峰组件。