【发布时间】:2016-10-15 16:15:02
【问题描述】:
在 Mule 中循环遍历 xml 有效负载中的所有节点并获取每个节点的值的最简单方法是什么
【问题讨论】:
在 Mule 中循环遍历 xml 有效负载中的所有节点并获取每个节点的值的最简单方法是什么
【问题讨论】:
不确定我是否理解正确。你想对每个值做什么?
您可以在 mule 中使用 xpath3() 方法从有效负载中获取 xml 元素。这是一个使用 xpath3 获取 xml 元素值的示例流程:
<flow name="print-payloadFlow">
<http:listener config-ref="HTTP_Listener_Configuration" path="/" doc:name="HTTP"/>
<set-payload value="#['<note><to>Tove</to><from>Jani</from><heading>Reminder</heading><body>Dont forget me this weekend!</body></note>']" doc:name="Set Payload"/>
<logger message="#[xpath3('//from')]" level="INFO" doc:name="Logger"/>
</flow>
无法粘贴整个 mule 流程,因为我没有发布链接的声誉,所以我不允许发布整个 xml 文件 ;-)
如果你想测试它,只需创建一个新的 mule 流并将这个 sn-p 粘贴到它。
【讨论】:
由于您没有正确地提出您的全部要求,已经列出了各种解决方案,请参考下面的链接。
请参阅下面的链接,这些链接将为您提供足够的洞察力来解决您的问题。
Mule Using XPath to return a value out of an Payload
foreach in xml-node return null in mule esb
How to extract values from an xml list in Mule foreach
【讨论】: