使用dataweave mule连接XML值
我们有一个场景,需要将所有XML节点值连接到字符串 输入XML使用dataweave mule连接XML值,mule,dataweave,Mule,Dataweave,我们有一个场景,需要将所有XML节点值连接到字符串 输入XML <root> <line>1</line> <line>2</line> <line>3</line> <line>4</line> </root> 1. 2. 3. 4. 输出到字符串 1234 请让我知道如何以字符串的形式实现 提前感谢。参考减少部分: 转化 %dw 1.0 %output
<root>
<line>1</line>
<line>2</line>
<line>3</line>
<line>4</line>
</root>
1.
2.
3.
4.
输出到字符串
1234
请让我知道如何以字符串的形式实现
提前感谢。参考减少部分:
转化
%dw 1.0
%output application/json
---
concat: ["a", "b", "c", "d"] reduce ($$ ++ $)
输出
{
"concat": "abcd"
}
因此,您可以尝试以下操作:concat:payload.root.*行reduce($$++$)
在reduce部分引用:
转化
%dw 1.0
%output application/json
---
concat: ["a", "b", "c", "d"] reduce ($$ ++ $)
输出
{
"concat": "abcd"
}
因此,您可以尝试以下操作:concat:payload.root.*行减少($$++$)
尝试以下操作:
%dw 2.0
output application/json
---
{
result: payload.root.*line reduce ((item ,acc="") -> acc ++ item)
}
试试这个:
%dw 2.0
output application/json
---
{
result: payload.root.*line reduce ((item ,acc="") -> acc ++ item)
}
谢谢你的回复
我收到以下警告:没有名为“$”的变量<嗯。。。显然这是Dataweave中的一个bug。我尝试了
concat:[“1”、“2”、“3”、“4”]减少$$+$
结果是{“concat”:10}
,这意味着工作正常。但是当为字符串连接添加额外的+
时,正如文档中提到的concat:[“1”、“2”、“3”、“4”]reduce$$++$
,我也得到了同样的警告。lambda周围的括号似乎起到了作用:payload.root.*line reduce($$++$)。哇,这很有效。谢谢Ryan。。。(我编辑了我的答案)谢谢你的回复我收到以下警告:没有名为“$”的变量<嗯。。。显然这是Dataweave中的一个bug。我尝试了
concat:[“1”、“2”、“3”、“4”]减少$$+$
结果是{“concat”:10}
,这意味着工作正常。但是当为字符串连接添加额外的+
时,正如文档中提到的concat:[“1”、“2”、“3”、“4”]reduce$$++$
,我也得到了同样的警告。lambda周围的括号似乎起到了作用:payload.root.*line reduce($$++$)。哇,这很有效。谢谢Ryan。。。(我编辑我的答案)