如何替换mule

时间:2015-05-05 16:30:41

标签: mule

<healthcare>
    <plans>
        <plan1>
            <planid>100</planid>
            <planname>medical</planname>
            <desc>medical</desc>
            <offerprice>500</offerprice>
            <area>texas</area>
        </plan1>
        <plan2>
            <planid>101</planid>
            <planname>dental</planname>
            <desc>dental</desc>
            <offerprice>1000</offerprice>
            <area>texas</area>
        </plan2>
    </plans>
</healthcare>


<splitter evaluator="xpath" expression="/healthcare/plans" doc:name="Splitter"/> 
<transformer ref="domToXml" doc:name="Transformer Reference"/> 
<logger level="INFO" doc:name="Logger" message=" plans   detils...#[message.payload]" />

我输入了如上所述的xml数据。我想从上面的xml数据中替换offerprice值。我试过各种方法。任何人都可以解决我在骡子中的要求

在我的requiremnet中,根据结果值点击外部api,我需要更改输入xml中的offerprice值。

任何帮助都是非常有价值的。我在工作中需要立即使用。请轻装上阵。

2 个答案:

答案 0 :(得分:0)

您可以使用XSLT将XML文件转换为另一个XML文件(使用或不使用相同的模式)。这是一个关于骡子外观的小例子。 。

http://marcotello.com/mule-esb/using-the-xslt-transformer-in-mule-esb/

还有很多资源可供学习如何在线/通过谷歌创建XSLT文件。

答案 1 :(得分:0)

有很多方法可以做到这一点 您可以在流程中使用Mule XSLT ,这将从输入xml更改offerprice的值,您将获得所需的Xml作为输出,并带有您想要的值。
另一种方法是使用 Groovy ,使用 XmlSlurper 来解析输入Xml,替换值,然后重建所需的XML。 参考: - XML Mapping in Mule

Mule: Enriching an XML with additional information from DB
也请参考 http://www.ibm.com/developerworks/library/j-pg05199/index.html

希望这个帮助