В моем приложении Spring-Boot
и Couchbase
есть объект Cat
в БД.
В новой версии приложения мы добавили новое логическое поле в объект out Cat
document:
@RequiredArgsConstructor
@AllArgsConstructor(onConstructor = @__(@PersistenceConstructor))
@Document
@Data
@Builder
@EqualsAndHashCode
public class Cat {
....
@Field
final boolean isHungry
Но сейчас у нас уже есть объекты Cat, которые находятся в БД и не имеют этого поля.
Когда приложение пытается прочитать эти Cats
, мы получаем эту ошибку:
org.springframework.data.mapping.model.MappingInstantiationException: Failed
to instantiate com.example.Cat using constructor public
com.example.Cat(...) with arguments ...
...
Caused by: java.lang.IllegalArgumentException: Parameter isHungry must not be null!
Нет ли способа сообщить Spring
, что если поле отсутствует в БД, оно должно использовать значение по умолчанию (в данном случае false
)