【问题标题】:How to discard empty XML Tag in Dataweave 2如何丢弃 Dataweave 2 中的空 XML 标签
【发布时间】:2021-07-15 20:30:49
【问题描述】:

我有以下 Dataweave 2 片段。输出为 application/xml。

    ns0#Accounting_Worktag_Reference: if (payload01.PROJECT != null and payload01.PROJECT != ""){
        ns0#ID @(ns0#"type": "Project_ID"): payload01.PROJECT}  else null

当 Project_ID 为空时,我得到一个空元素输出如下

<ns0:Accounting_Worktag_Reference/>

我想跳过这个空元素。我尝试了文档中提到的指令 skipNullOn="everywhere" 但仍然输出空元素。当 Project_ID 为 null 时,有没有其他方法可以跳过空元素。

【问题讨论】:

    标签: dataweave mule4


    【解决方案1】:

    基本上,您需要使用这个if sintax,如本例所示:https://docs.mulesoft.com/mule-runtime/4.3/dataweave-cookbook-output-a-field-when-present

    在你的情况下,它看起来像这样:

    %dw 2.0
    output application/xml
    ns ns0 http://some
    ---
    {ns0#root: 
        (ns0#Accounting_Worktag_Reference: { ns0#ID @(ns0#"type": "Project_ID"): payload.PROJECT} ) 
            if (payload.PROJECT != null and payload.PROJECT != "")
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-10-22
      • 2020-10-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-20
      相关资源
      最近更新 更多