gpt4 book ai didi

mysql - esb mule 中的 DataWeave 转换问题

转载 作者:行者123 更新时间:2023-11-29 21:42:26 25 4
gpt4 key购买 nike

我在 dataweave 中进行了转换。

我正在从 Mysql 数据库获取输入。输入负载类型是List-Map。我的 dataweave 编辑器有以下代码。

%dw 1.0
%namespace ns1 urn:abc:api:Components
%output application/xml
---
ns1#"ItemRequest":{
ns1#"Requester":
ns1#ac: payload.time_max,

ns1#"ErrorLanguage": "en_US",
ns1#"WarningLevel": "High"
}

我的输出是

<?xml version='1.0' encoding='UTF-8'?>
<ns1:ItemRequest xmlns:ns1="urn:abc:api:Components">
<ns1:Requester>
<ns1:ac>
<time_max>1</time_max>
</ns1:ac>
</ns1:Requester>
<ns1:ErrorLanguage>en_US</ns1:ErrorLanguage>
<ns1:WarningLevel>High</ns1:WarningLevel>
</ns1:AddItemRequest>

我不确定为什么我会在输出中使用“time_max”在“ac”元素下创建标签。 “Time_max”是 MySQL 表中的列名。但我不想在输出 xml 中添加该列。我们如何避免创建此标签?

预期输出为

<?xml version='1.0' encoding='UTF-8'?>
<ns1:ItemRequest xmlns:ns1="urn:abc:api:Components">
<ns1:Requester>
<ns1:ac>1</ns1:ac>
</ns1:Requester>
<ns1:ErrorLanguage>en_US</ns1:ErrorLanguage>
<ns1:WarningLevel>High</ns1:WarningLevel>
</ns1:AddItemRequest>

最佳答案

我已通过输入以下代码解决了该问题。

%dw 1.0
%namespace ns1 urn:abc:api:Components
%output application/xml
---
ns1#"ItemRequest":{
ns1#"Requester":
ns1#ac: payload[0].time_max,
ns1#"ErrorLanguage": "en_US",
ns1#"WarningLevel": "High"
}

下面这行代码片段很神奇。我已经包含了数组索引值。

 ns1#ac: payload[0].time_max

关于mysql - esb mule 中的 DataWeave 转换问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34387632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com