Немного поздно, но этот ответ может помочь в поиске кого-то другого
Я согласен, что было бы неплохо сделать это на основе политики - в настоящий момент, если вы получаете одну ошибку преобразования, вы не получаетесписок на всех.Я думаю, что есть случаи, когда это действительно необходимо.
Однако, поскольку вы не можете этого сделать, вам нужно зарегистрировать пользовательский конвертер для вашего ModelObject, который конвертирует снисходительно ...
public class DBObjectToModelObjectConverter implements Converter<DBObject,ModelObject>{
public ModelObject convert(DBObject s) {
... Read from the DBObject into your ModelObject and work around the bad data
}
}
и затем зарегистрируйте это как пользовательский конвертер в ваших определениях бинов.Что-то вроде:
<bean id="lenientModelReadConverter" class="com.my.DBObjectToModelObjectConverter"/>
<mongo:custom-converters>
<mongo:converter ref="lenientModelReadConverter"/>
</mongo:custom-converters>