使用 mule dataweave 从 xml 中删除空标签
Remove empty tags from xml using mule dataweave
我有 xml 并且想删除具有空值的标签。
Source:
<wd:Worktag_Reference>
<wd:ID wd:type="abc">RISK_STATE_GA</wd:ID>
</wd:Worktag_Reference>
<wd:Worktag_Reference>
<wd:ID wd:type="abcd"/>
</wd:Worktag_Reference>
<wd:Worktag_Reference>
<wd:ID wd:type="abcde">LC011</wd:ID>
</wd:Worktag_Reference>
我想要这样的输出
Result:
<wd:Worktag_Reference>
<wd:ID wd:type="abc">RISK_STATE_GA</wd:ID>
</wd:Worktag_Reference>
<wd:Worktag_Reference>
<wd:ID wd:type="abcde">LC011</wd:ID>
</wd:Worktag_Reference>
您可以在数据编织中使用 skipNullOn="everywhere"。
您可以使用filterObject 函数去除那些值为null 的对象。同样在我的示例中,我添加了标签名称 root
,因为您的 xml 无效
payload.root filterObject ((value, key, index) -> value.ID != null)
我有 xml 并且想删除具有空值的标签。
Source:
<wd:Worktag_Reference>
<wd:ID wd:type="abc">RISK_STATE_GA</wd:ID>
</wd:Worktag_Reference>
<wd:Worktag_Reference>
<wd:ID wd:type="abcd"/>
</wd:Worktag_Reference>
<wd:Worktag_Reference>
<wd:ID wd:type="abcde">LC011</wd:ID>
</wd:Worktag_Reference>
我想要这样的输出
Result:
<wd:Worktag_Reference>
<wd:ID wd:type="abc">RISK_STATE_GA</wd:ID>
</wd:Worktag_Reference>
<wd:Worktag_Reference>
<wd:ID wd:type="abcde">LC011</wd:ID>
</wd:Worktag_Reference>
您可以在数据编织中使用 skipNullOn="everywhere"。
您可以使用filterObject 函数去除那些值为null 的对象。同样在我的示例中,我添加了标签名称 root
,因为您的 xml 无效
payload.root filterObject ((value, key, index) -> value.ID != null)