У меня есть следующая сущность:
@Entity("platform_defs")
class PlatformDef {
@Id
Long id
@Property("name")
String name
@Property("abbreviation")
String abbreviation
@Property("type")
String type
@Property("hg_repo")
String hgRepo
@Property("port")
Long port
@Property("status")
String status
}
И следующий код Morphia пытается сохранить экземпляр этой сущности:
public void savePlatformDef(PlatformDef pDef) {
try {
AppConfig config = getConfig();
String dbName = config.getMongo().getDatabaseName();
Mongo mongo = new Mongo(config.getMongo().getHost(), config.getMongo().getPort());
morphia = new Morphia();
datastore = morphia.createDatastore(mongo, dbName);
morphia.map(PlatformDef.class);
datastore.save(pDef);
} catch(Throwable t) {
System.out.println(t.getMessage());
}
}
Когда я запускаю это, я получаю:
java.lang.StackOverflowError
Вот рекурсивный список сделанных вызовов:
at org.mongodb.morphia.mapping.EmbeddedMapper(toDBObject:40)
at org.mongodb.morphia.mapping.Mapper(writeMappedField:642)
at org.mongodb.morphia.mapping.Mapper(toDBObject:544)
at org.mongodb.morphia.mapping.Mapper(toDBObject:526)
Этот шаблон повторяется снова и снова... Что не так с моей настройкой?