Dataweave删除空数组

时间:2018-06-06 15:52:31

标签: arrays mule-studio dataweave mule-esb

我们正在运行MuleEsb 3.9.0 我正试图在我的dataweave转换中删除空数组。例如:

payload map ((value , indexOfValue) -> {
 value : {
    content: value.content,
    subvalue: value.subValue map ((subValue, indexOfsubValue)->
    {
        sub: subValue
    }) filter ($.sub != null )
  }
})

这将导致

[
  {
    value:
     {
       content: xyz
       subValue: []
     }
  }
]

我想要完全删除subValue。输出:

[
  {
    value:
     {
       content: xyz
     }
  }
]

1 个答案:

答案 0 :(得分:0)

您需要这样的东西:

payload map ((v) -> {
  value: {
    content: v.content,
    (subvalue: v.subValue map ... ) when ((sizeOf v.subValue) != 0)
  }
})