У меня есть классSpring Rest Exception Не удалось прочитать JSON: Невозможно десериализации экземпляр java.lang.String из START_OBJECT
@Document(collection="emp_data")
public class Employee{
String name;
@Id
String id;
List<Skill> skills;
//getter/setters
public static class Skill{
String name;
Integer level;
}
}
Мой JSON является
{"id":"XXX","name":"john","skills":[{"name":"football","level":0}]}
Когда я POST это
@RestController класс CreateEmployee (@RequestBody Сотрудник EMP) метод
Я получаю следующее исключение Spring Rest Exception Не удался прочитать JSON: Невозможно десериализацию экземпляра java.lang.String из START_OBJECT Это в то время как десериализация коллекции навыков, я пытался дебютировать Джексон ObjectMapper выбрасывает это исключение, когда BeanDeserialiser пытается десериализовать объект.
Если какой-либо один может поделиться образец работает объект и контроллер с ComplexObject содержащий список
работает для меня. проверьте наличие специального символа в json. может быть проблема с кодировкой esp для двойных кавычек –
Не могли бы вы добавить рабочий код в post .. Я могу преобразовать объект Jason в Java и с него, используя тестовую программу ObjectMapper, но не работает с весенним отдыхом. Специальных символов нет. Если я удаляю навыки из json, сообщение принимается хорошо. – RockSolid
. Еще какая-то отладка получила экземпляр BeanDeserialiser, свойство _vanila установлено в false в SpringRest, а его «true» в случае моей программы TestJackson. – RockSolid