Mule 将数组追加到xml对象
我有以下的意见Mule 将数组追加到xml对象,mule,dataweave,anypoint-studio,mulesoft,Mule,Dataweave,Anypoint Studio,Mulesoft,我有以下的意见 { "array": [ { "name": "value1" }, { "name": "value2" }, { "name": "value3" } ]
{
"array": [
{
"name": "value1"
},
{
"name": "value2"
},
{
"name": "value3"
}
]
}
并希望得到以下输出
<a>
<b />
<c>value1</c>
<c>value2</c>
<c>value3</c>
</a>
谢谢你的帮助
还有额外的分数。。如果有人可以使用上面的示例json负载帮助生成以下内容
<a>
<b />
<c>value1</c>
<d>e</d>
<c>value2</c>
<d>e</d>
<c>value3</c>
<d>e</d>
</a>
价值1
E
价值2
E
价值3
E
尝试以下方法:
脚本
%dw 2.0
output application/xml writeDeclaration=false
---
a : {
b: {}
}
++ {
(payload.*array map {c: $.name})
}
使用此方法,您可以获得第二个预期输出: 剧本 输出
价值1
E
价值2
E
价值3
E
谢谢你,萨利姆,感谢你的帮助!
<a>
<b />
<c>value1</c>
<d>e</d>
<c>value2</c>
<d>e</d>
<c>value3</c>
<d>e</d>
</a>
%dw 2.0
output application/xml writeDeclaration=false
---
a : {
b: {}
}
++ {
(payload.*array map {c: $.name})
}
%dw 2.0
output xml writeDeclaration=false
---
a : {
b:''
}
++ {
(payload.array map
{
c: $.name,
d:'e'
})
}
<a>
<b/>
<c>value1</c>
<d>e</d>
<c>value2</c>
<d>e</d>
<c>value3</c>
<d>e</d>
</a>