Как добавить новый тег в полезную нагрузку структуры xml с помощью MEL (mule)

Я новичок в Mule, подскажите, как вставить новый тег в структуру XML с помощью языка выражений Mule (MEL). Необходимо вставить тег B в приведенную ниже структуру XML.

<Test>
<A>table 1</A>
<C>table 3</C>
</Test> 

Заранее спасибо.


person star    schedule 04.08.2013    source источник


Ответы (2)


Мое dom4j fu ограничено, но вот что я придумал:

<mulexml:xml-to-dom-transformer returnClass="org.dom4j.Document" />

<expression-component><![CDATA[
  bNode = message.payload.rootElement.addElement('B');
  bNode.text = 'table 2';
  message.payload.rootElement.elements().add(1, bNode.detach());
]]></expression-component>

<mulexml:dom-to-xml-transformer />

Это отлично работает с Mule 3.4.0.

person David Dossot    schedule 04.08.2013
comment
Спасибо, Дэвид. У меня все работает. Пожалуйста, помогите мне понять, какой скрипт используется здесь для управления rootElement, addElement (), elements (). помощь. - person star; 06.08.2013

Используйте компонент Data Weave, как показано ниже:

%dw 1.0
%output application/xml
%var myValue='MyValue'
%var B=''
---

myoutput:{
    data: payload.Test ++ B:myValue

}
person Sudha Ch    schedule 08.12.2015