Mule 如何在DataWeave中关联两个XML属性
如何从列表输出连接DataWeave中的两个Mule 如何在DataWeave中关联两个XML属性,mule,dataweave,Mule,Dataweave,如何从列表输出连接DataWeave中的两个XML属性 我的有效载荷是: [{productDetails={ean=null, variation-attribute-id=Colour, attribute-id=Colour, attribute=System Value, varaints=123, display-name=Colour}] 我想要一个如下输出: <variation-attribute variation-attribute-id="Colour" att
XML
属性
我的有效载荷是:
[{productDetails={ean=null, variation-attribute-id=Colour, attribute-id=Colour,
attribute=System Value, varaints=123, display-name=Colour}]
我想要一个如下输出:
<variation-attribute variation-attribute-id="Colour" attribute-id="Colour">
我尝试使用
++
运算符,但它给对象提供了类似字符串的错误。要做到这一点,您必须编写如下代码:
%dw 1.0
%output application/xml
---
variations: {
(payload map {
variation-attribute @(
variation-attribute-id: $.productDetails.variation-attribute-id,
attribute-id: $.productDetails.attribute-id): ""
})
}
(我假设根目录有一个variations
元素)
这里,对于列表中的每个项目(payload
),您必须生成一个variation属性
,因此您需要一个map
操作
属性的指定方式如下:
<element> @(<attrName>: <attrValue>, <attrName2>: <attrValue2>, ...)
@(:,:,…)
payload map…
周围的括号计算封闭表达式,并用其结果“填充”variations
的值(这是一个variation属性
元素的数组)
注意:我将一个空字符串作为文本,因为目前无法内联关闭标记。需要的输出如下