Я пытаюсь десериализовать XML с вложенными тегами, но я сталкиваюсь с проблемой, когда оболочка приходит без дочерних тегов.
Фактический Java код блока:
@JacksonXmlElementWrapper(localName = "foo")
@JacksonXmlProperty(localName = "bar")
private List<String> bar;
Пример:
<row>
<foo>
<bar>test</bar>
<bar>test2</bar>
</foo>
</row>
В приведенном выше примере мои тесты работают нормально. Отладка результата List<String> bar
возвращает [test, test2]
Проблема в том, что я сталкиваюсь со следующим исключением, когда мое приложение получает XML без тега вообще (я должен принять это потому что он приходит с веб-сервера за пределами моих доменов), например:
<row>
<foo>
</foo>
</row>
Невозможно десериализовать экземпляр 'java .util.ArrayList' из токена VALUE_STRING
через цепочку ссылок: Результат ["row"] -> java .util.ArrayList [0] -> ROW ["foo"])
Как я могу присутствовать на этих двух способах десериализации этого XML? С и без ?