我有一個XML進入我的Mule過程。我還想增加/修改它的更多值。例如這裏是結構:Mule:使用來自DB的附加信息豐富XML
<Order xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="C:/XML/PO/Outbound/XML/PO.xsd">
<TransactionId>376721</TransactionId>
<TransactionDateTime>2014-01-30T00:00:00</TransactionDateTime>
<Parties>
<Party>
<PartyType>Sold</PartyType>
<PartyCode>106246</PartyCode>
<FirstName>John</FirstName>
<CompanyName>100</CompanyName>
<Address1>1916 Quino Street</Address1>
<CityName>San Francisco</CityName>
<StateOrProvinceCode>CA</StateOrProvinceCode>
<PostalCode>94805</PostalCode>
<CountryCode>USA</CountryCode>
<PhoneNumber>5102333333</PhoneNumber>
</Party>
<Party>
<PartyType>DC</PartyType>
<Address1/>
<Address2/>
<Address3/>
<CityName/>
<StateOrProvinceCode/>
<PostalCode/>
<PhoneNumber/>
</Party>
<Party>... </Party>
</Parties>
...
</Order>
現在我有一個數據庫中的Address1/Address2/Address3值。我需要提取它&用這些數據進一步豐富了XML。我可以使用JDBC數據庫適配器來獲取值。通過&然後進一步處理XML來修改帶有檢索值的XML的最佳方式是什麼?
感謝安東,你的意思是使用MEL內的groovy?我不熟悉上面提供的代碼的語法。你能解釋它是如何工作的嗎?或者,你認爲做一個XML To對象類型的轉換和修改字段然後再轉換回XML更容易嗎? – insaneyogi
儘管您可能需要檢查一些Groovy語法來執行遍歷,但您可以在Groovy組件中使用腳本。我的例子只是設置第二方Address1元素內容。 XML To Object當然是可能的,但是您需要定義一個匹配傳入XML的對象結構。 –