мне нужно deserializa в JSon так:Джексон Полиморфные Десериализация ожидается START_ARRAY
{
"arrayObj1":[
{
"type":"t1",
"value":[
{
"value1":"a"
},
{
"value2":"b"
}
],
"otherInfo":"abc"
}
]
}
Thats, как я пытаюсь сделать это:
public class ClassA{
private ArrayObj1[] arrayObj1;}
Тогда ...
и ...
public abstract class Value {}
Это ошибка IV получил: com.fasterxml.jackson.databind.JsonMappingException: Неожиданный токен (START_OBJECT), ожидаемый START_ARRAY: необходимость JSON массива содержать информацию о типе As.WRAPPER_ARRAY для класса ... и т.д.
Как справиться с этим? Благодарю.
EDIT: Это, как я десериализации:
public ClassA getObj (String jsonString) {
ClassA obj = null;
try {
obj = new ObjectMapper().readValue(jsonString, ClassA.class);
} catch (IOException e) {
e.printStackTrace();
}
return obj;
}
Полная ошибка:
com.fasterxml.jackson.databind.JsonMappingException: Неожиданный маркер (START_OBJECT), ожидаемый START_ARRAY: необходимость JSON Array содержит Информация типа типа As.WRAPPER_ARRAY для класса. Значение в [Источник: [email protected]; Линия: 1, колонка: 496] (через эталонной цепи:. .ClassA [ "arrayObj1"] -> ArrayObj1 [ "значение"])
Какой код вы используете для собственно десериализации? И каково полное сообщение об ошибке? Эти вещи помогут отладить вашу проблему. –
Привет, я не уверен в этом, но вот как я десериализую, я редактирую сообщение. – LinkOut