objectify-appengine – 嵌入式类 – 不是受支持的属性类型
我正在谷歌应用引擎上尝试objectify(版本2.2.3)嵌入式类示例(wiki)。 我收到此错误:
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 =“条形值”;
EntityWithEmbedded类:
import javax.jdo.annotations.Embedded; import javax.persistence.Entity; import javax.persistence.Id; @实体 公共类EntityWithEmbedded { @Id public Long id; @Embedded public LevelOne one; // getter&setters here }
class级一级:
import javax.persistence.Embedded; 公共课LevelOne { public String foo; public @Embedded LevelTwo two; // getter&setters here }
Class LevelTwo:
公共课LevelTwo { public String bar; // getter&setters here }
所以这是我尝试的基本例子。 关于什么缺失的任何想法?
你在EntityWithEmbedded
使用了错误的@Embedded
注释。
使用javax.persistence.Embedded
而不是javax.jdo.annotations.Embedded