JacksonxmlRootelement root -элемент не игнорируется при десериализацииJAVA

Программисты JAVA общаются здесь
Anonymous
JacksonxmlRootelement root -элемент не игнорируется при десериализации

Сообщение Anonymous »

Я пытаюсь покинуть файл XML в объект Java, но, по -видимому, Джексон игнорирует имя элемента корневого элемента.
Я попытался добавить аннотация @jacksonxmlrootelement , Следующие предложения по этим вопросам.
Как я могу заставить Джексона проверить имя корневого элемента?

Я попытался воспроизвести это поведение со следующим минимальным, автономным примером:
customer.xml

Код: Выделить всё

John
Smith

employee.java

Код: Выделить всё

@JacksonXmlRootElement(localName = "Employee")
public class Employee {
@JacksonXmlProperty(localName = "FirstName")
private String firstName;
@JacksonXmlProperty(localName = "LastName")
private String lastName;
@JacksonXmlProperty(localName = "Salary")
private BigDecimal salary;

// getters and setters omitted for brevity...
}
Основной метод

Код: Выделить всё

XmlMapper mapper = new XmlMapper(new JacksonXmlModule());
String xmlContent = Files.readString(Path.of("customer.xml"));
Employee employee = mapper.readValue(xmlContent, Employee.class);
С приведенным выше кодом Джексон с радостью понижает документ XML, начиная с элемента , несмотря на @jacksonxmlrootelement (localname = "Сотрудник") Присутствует на работнике pojo class. конфигурация?>

Подробнее здесь: https://stackoverflow.com/questions/794 ... erializing

Вернуться в «JAVA»