Ну, нет способа сделать это "ясно".У Джексона нет таких методов, как rootJson.path("pojoName", *defaultValue*)
или mapper.treeToValue(pojoJson, Pojo[].class, *defaultValue*)
.Но у вас есть несколько вариантов.
1) Используйте with
и withArray
вместо path
.
Пусто ObjectNode
и ArrayNode
будет возвращено там с методами.Будет возвращен пустой массив, а MismatchedInputException
не будет выброшено.
Но:
with*
методы не только возвращают *Node
.Если свойства не существует, новый узел будет создан и добавлен к вашему rootJson
. - Используйте
withArray
в случае преобразования ObjectNode в массив.
2) Используйте isMissingNode для обнаружения отсутствующих узлов.
path
метод возвращает специальный MissingNode , если свойства не существует.