xml节点中的foreach在ule esb中返回null [英] foreach in xml-node return null in mule esb
本文介绍了xml节点中的foreach在ule esb中返回null的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用以下流程.
I am using below flow.
<flow name="mytestFlow1" doc:name="mytestFlow1">
<http:inbound-endpoint mimeType="text/xml" path="xmltest" exchange-pattern="request-response" host="localhost" port="8081" doc:name="HTTP"/>
<foreach collection="#[xpath://file//data//deliveryOrder]" doc:name="For Each" >
<echo-component />
<logger level="INFO" message="#[payload]" />
<logger level="INFO" message="#[rootMessage]" />
</foreach>
</flow>
并在xml下发布.
<file>
<data>
<deliveryOrder>
<deliveryMethod>TRUCK1</deliveryMethod>
</deliveryOrder>
<deliveryOrder>
<deliveryMethod>TRUCK21</deliveryMethod>
</deliveryOrder>
<deliveryOrder>
<deliveryMethod>TRUCK2</deliveryMethod>
</deliveryOrder>
</data>
</file>
当我运行我的流回显组件时,打印正确,但记录器打印为空.我还使用了自定义转换器,它也输出null.
when I am running my flow echo component is print correct but logger print null. I also used custom transformer it also print null.
任何建议都是值得的.
推荐答案
首先使用将其转换为json即可解决问题.
Problem is sort out using convert it to json first.
<json:xml-to-json-transformer doc:name="XML to JSON" />
<foreach doc:name="For Each" collection="#[json:file/data/deliveryOrder]">
<flow-ref name="insertdatabase" doc:name="Flow Reference" />
</foreach>
这篇关于xml节点中的foreach在ule esb中返回null的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文