У меня есть полезная нагрузка JSON в форме:
[
{"id": 1, "list": [1], "name":"one"},
{"id": 2, "list": [1,2], "name":"two"},
{"id": 3, "list": [], "name":"three"}
]
И я хочу отфильтровать элемент из массива, который содержит пустое свойство "list"
. Другими словами, я хочу отбросить элемент с id=3
и обработать только первый и второй элементы в моем примере выше.
В настоящее время мой фильтр выглядит так:
<!-- ne == not equals -->
<int:filter id="filter"
input-channel="in"
output-channel="out"
expression="#jsonPath(payload, '$[*].list') ne '[]'"
discard-channel="consoleOutputChannel" />
Но это не работает, как мне указать моему expression
, что я хочу исключить элементы с пустыми свойствами list
?