Джексон непризнанное полеJAVA

Программисты JAVA общаются здесь
Anonymous
Джексон непризнанное поле

Сообщение Anonymous »

Я пытаюсь десериализовать следующий XML И используя такое определение

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

@Data
public class Fightrules {
public List fightrule;

@Data
@JsonAutoDetect
public static class Fightrule {
public int id;
public String owner;
public String name;
@JacksonXmlElementWrapper(useWrapping = false)
public List setting;
}
}

@Data
public class Setting {

@JacksonXmlProperty(isAttribute = true)
public String faction;

@JacksonXmlProperty(isAttribute = true)
public String civilian;
}
Однако я получаю исключение

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

Unrecognized field "faction" (class Fightrules$Fightrule), not marked as ignorable
Похоже, Джексон не видит список вложенных объектов и пытается сериализовать его в объект Fightrules.
Я пытался использовать аннотации, которые помогают Джексону решить эту проблему. такая ситуация, но ни один из них не подошел. Но я полагаю, что должно быть обходное решение. Возможно, проблема в структуре xml, поскольку объект установки не является обязательным

Подробнее здесь: https://stackoverflow.com/questions/786 ... ised-field

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