0

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

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 进行转换?

4

1 回答 1

0
  • 对于 XML 到 JSON 的转换

,你可以试试下面的:

跳过空值

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

%output application/xml skipNullOn="everywhere"

当设置为:

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

attributes:跳过具有 null 值的 XML 属性。

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

参考以下链接了解更多详情,

DWL 参考

于 2017-12-06T05:08:05.943 回答