У меня есть POJO
public class Model {
String name;
}
public class MyClass {
@id
String _id;
ArrayList<Model> models;
}
Я пытаюсь добавить еще одну запись в массив моделей с этим json -
{
"models": [
{
"name" : "string"
},
{
"name" : "string244"
}
]
}
И это код Java для того же -
@PutMapping("/myClass/{id}")
public ResponseEntity<MyClass> addModel(@PathVariable("id") String recId,
@Valid @RequestBody MyClass myClass) {
Query query = new Query(Criteria.where("_id").is(recId));
Update update = new Update().push("models", myClass.models);
MyClass myNewClass = mongoOperations.findAndModify(query, update, MyClass.class);
return new ResponseEntity<>(myNewClass, HttpStatus.OK);
}
Но Spring не может конвертировать мой JSON в MyClass POJO. Получение этого исключения -
org.springframework.data.mapping.MappingException: Cannot convert [Document{{name=string}}, Document{{name=string244}}] of type class java.util.ArrayList into an instance of class com.trustin.model.Model! Implement a custom Converter<class java.util.ArrayList, class com.trustin.model.Model> and register it with the CustomConversions. Parent object was: com.trustin.model.MyClass@335afcef -> null
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.readCollectionOrArray(MappingMongoConverter.java:1099) ~[spring-data-mongodb-2.2.0.RELEASE.jar:2.2.0.RELEASE]
Как добавить еще один элемент в массив модели в моей коллекции?