Java 使用Morphia获取@reference实体时出错

Java 使用Morphia获取@reference实体时出错,java,mongodb,morphia,Java,Mongodb,Morphia,我拥有Exec实体: @Entity(“Exec”) 公共类执行官{ @身份证 私有ObjectId; 私人长起始日期; 私人长期约会; 公共枚举状态{ 成功、失败、偏袒 } 私人身份; @引用(idOnly=true,ignoreMissing=true,lazy=false) 分析; @引用(idOnly=true,ignoreMissing=true,lazy=true) Set conclusions=新的HashSet(); //接球手和接球手 其中引用了结论实体: @实体(“结论”

我拥有Exec实体:

@Entity(“Exec”)
公共类执行官{
@身份证
私有ObjectId;
私人长起始日期;
私人长期约会;
公共枚举状态{
成功、失败、偏袒
}
私人身份;
@引用(idOnly=true,ignoreMissing=true,lazy=false)
分析;
@引用(idOnly=true,ignoreMissing=true,lazy=true)
Set conclusions=新的HashSet();
//接球手和接球手
其中引用了结论实体:

@实体(“结论”)
公开课结论{
@身份证
私有ObjectId;
private Map params=new HashMap();
私人长起始日期;
私人长期约会;
公共枚举状态{
成功,,
失败
}
私人身份;
私有字符串错误消息;
私有字符串堆栈跟踪;
Set data=new HashSet();
在调试器中,如果我试图得出结论

Set conclusions=mongoWrapper.getDataStore().createQuery(Exec.class).asList().get(0).getConclusions()
我得到以下信息:

com.sun.jdi.InvocationException occurred invoking method.
例如,如果我尝试访问该对象,请执行以下操作:

conclusions.toArray()
它抛出一个RuntimeException,检查堆栈跟踪:

org.mongodb.morphia.mapping.MappingException: Embedded element isn't a DBObject! How can it be that is a class java.lang.String

我试着换了一大堆东西,但都没用。你知道问题出在哪里吗?

在一组结论中使用具体的分析结论。
记住注释不是继承的,然后用@Entity标记analysisconsultion

我的错误是,我将类的名称从analysisconsultion简化为consultion(以及其他类)为了可读性,我已经更正了代码段。没有其他类,只涉及Exec和CONTINUE。因为记录
@Entity
标记为
@Inherited
。您能将保存的数据示例粘贴到这些对象中吗?我将尝试在本地重新创建该错误。