【问题标题】:Mule DataWeave - XML to json transformation - check XML attribute existsMule DataWeave - XML 到 json 转换 - 检查 XML 属性是否存在
【发布时间】:2017-12-06 02:16:12
【问题描述】:

这是我转换前的有效载荷:

Payload: <stock article_id="28932" lot_number="282779"/>

这是将 xml 转换为 json 的 dataweave 代码:

stockPayload: {
        articleId: payload.stock_adjustment.@article_id,
        lotNumber: payload.stock_adjustment.@lot_number,
        uom: payload.stock_adjustment.@uom,
    }

现在 uom 是一个可选字段,因此它有时不会出现在 xml 属性中。由于未找到 uom 属性,此转换当前正在引发映射错误。

即使属性不在 xml 中,如何让 dataweave 进行转换?

【问题讨论】:

  • 您的问题解决了吗?如果是,您可以接受答案,它可以帮助其他面临类似问题的人:)

标签: mule mule-studio dataweave xml-to-json


【解决方案1】:
  • 用于 XML 到 JSON 的转换

,你可以试试下面的:

跳过空值

只要输出是 XML 或 JSON 类型并且在其元素或属性中具有空值,您可以指定是否生成包含具有“空”值的字段的出站消息,或者是否完全忽略这些字段。这可以通过名为 skipNullOn 的输出指令中的属性进行设置,该属性可以设置为三个不同的值:元素、属性或任何位置。

%output application/xml skipNullOn="everywhere"

当设置为:

元素:忽略具有空值的键:值对。

属性:跳过具有空值的 XML 属性。

无处不在:将此规则应用于元素和属性。

更多详情请参考以下链接,

DWL reference

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-22
    • 1970-01-01
    • 1970-01-01
    • 2016-11-06
    • 1970-01-01
    • 2020-06-09
    • 2016-02-04
    • 1970-01-01
    相关资源
    最近更新 更多