Я могу легко вставить объект java в базу данных MongoDb с помощью Morphia. Теперь я хочу получить документ и отобразить его как java объект. Документ MongoDB выглядит следующим образом:
{
"Name":"XXX",
"Fingertemplate":{ "immutable" : { "size" : { "x" : 388 , "y" : 374} , "minutiae" : [ ........
Мой пример кода показан ниже:
@Entity(value="fingertable", noClassnameStored=true)
public class RecordFingerTemplate {
@Id private ObjectId id;
@Property private String name;
@Embedded private FingerprintTemplate fingertemp;
public RecordFingerTemplate (){
}
public RecordFingerTemplate(String name)
{
this.name=name;
}
public ObjectId getId() {
return id;
}
protected void setId( final ObjectId id ) {
this.id = id;
}
public FingerprintTemplate getTemplate(){
return fingertemp;
}
public void setTemplate(FingerprintTemplate template){
this.fingertemp=fingertemp;
}
}
и для сохранения объекта в базу данных, которую я использую datastore.save(Object)
, он работает Теперь я хочу получить документ и получить объект шаблона отпечатка пальца.
List<RecordFingerTemplate> result=datastore.createQuery(RecordFingerTemplate.class)
.field("name").containsIgnoreCase("john")
.order("name")
.asList();
Ошибка: ** org.mongodb.morphia.mapping.MappingException: ошибка установки значения из конвертера (PassthroughConverter) для ImmutableTemplate.size to {"x": 388, "y ......... **