使用dataweave mule连接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

我们有一个场景,需要将所有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 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。。。(我编辑我的答案)