Java objectify appengine-嵌入类-不受支持的属性类型
我正在google app engine上试用objectify(版本2.2.3)嵌入式类示例(wiki)。我得到这个错误: java.lang.IllegalArgumentException: one: com.mypkg.LevelOne is not a supported property type. at com.google.appengine.api.datastore.DataTypeUtils.checkSupportedSingleValue(DataTypeUtils.java:184) java.lang.IllegalArgumentException:one:com.mypkg.LevelOne不是受支持的属性类型。 位于com.google.appengine.api.datastore.DataTypeUtils.checkSupportedSingleValue(DataTypeUtils.java:184) 我的代码与Wiki中的代码相同。控制器中的部分: EntityWithEmbedded ent = new EntityWithEmbedded(); ent.one = new LevelOne(); ent.one.foo = "Foo Value"; ent.one.two = new LevelTwo(); ent.one.two.bar = "Bar Value"; EntityWithEmbedded ent=新EntityWithEmbedded(); ent.one=新的LevelOne(); ent.one.foo=“foo值”; ent.one.two=新的LevelTwo(); ent.one.two.bar=“bar值”; EntityWithEmbedded类: import javax.jdo.annotations.Embedded; import javax.persistence.Entity; import javax.persistence.Id; @Entity public class EntityWithEmbedded { @Id public Long id; @Embedded public LevelOne one; //getter & setters here } 导入javax.jdo.annotations.Embedded; 导入javax.persistence.Entity; 导入javax.persistence.Id; @实体 公共类EntityWithEmbedded{ @Id公共长Id; @嵌入式公共一级; //这里是盖特和塞特 } 一级: import javax.persistence.Embedded; public class LevelOne { public String foo; public @Embedded LevelTwo two; //getter & setters here } 导入javax.persistence.Embedded; 公共一级{ 公共字符串foo; 公共@Embedded LevelTwo; //这里是盖特和塞特 } 第二级: public class LevelTwo { public String bar; //getter & setters here } 公共二级{ 公共字符串栏; //这里是盖特和塞特 }Java objectify appengine-嵌入类-不受支持的属性类型,java,google-app-engine,entity-relationship,objectify,Java,Google App Engine,Entity Relationship,Objectify,我正在google app engine上试用objectify(版本2.2.3)嵌入式类示例(wiki)。我得到这个错误: java.lang.IllegalArgumentException: one: com.mypkg.LevelOne is not a supported property type. at com.google.appengine.api.datastore.DataTypeUtils.checkSupportedSingleValue(DataTypeUti
所以这是我正在尝试的基本例子。有什么想法吗?您在
EntityWithEmbedded
中使用了错误的@Embedded
注释
使用
javax.persistence.Embedded
而不是javax.jdo.annotations.Embedded
我已经尝试在LevelOne和LevelTwo类上使用@Entity和@Id。我故意公开这些字段,以避免使用“能手”和“二传手”。