Unmarshall xml файл, UnrecognizedPropertyException: нераспознанное поле "" - PullRequest
0 голосов
/ 04 июня 2018

Мне было интересно, может ли кто-нибудь мне помочь.Я создал небольшой проект Maven, чтобы вы могли легко запустить тест.Для тестирования вы можете запустить тест JUnit UnmarshalTest.unmarshalResponse (), который завершается с ошибкой.

Я пытаюсь прочитать значение из элемента xml с атрибутом, но каким-то образом я не могу этого сделать,Любая идея, почему?

XML выглядит так:

<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
    <id_lang xlink:href="http://prestashop.local/api/languages/1">57</id_lang>
</prestashop>

Thx много

/ Дэвид

[Обновить] Извините, я уже подготовил кодно забыл его загрузить ... https://drive.google.com/open?id=1t99zBxN7juA9RgNhS6S9UCCFSYxksnXW

1 Ответ

0 голосов
/ 06 июня 2018

Возвращается полное сообщение, такое как:

com.fasterxml.jackson.databind.exc.UnrecognizedPropertyException: Unrecognized field "" (class com.smooth.systems.test.TagValue), not marked as ignorable (2 known properties: "idLang", "href"])
 at [Source: (File); line: 3, column: 76] (through reference chain: com.smooth.systems.test.TestWrapper["id_lang"]->com.smooth.systems.test.TagValue[""])

Что указывает на 76 в теле элемента <id_lang> в приведенном выше примере - отсюда и отсутствующее имя поля.

(Это строка 3, есть еще одна строка объявления <?xml ... ?>, которая не видна в примере xml).

Переключение аннотации @XmlValue на @JacksonXmlText класса-владельца TagValue кажетсяработать лучше.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...