Google app engine 带有HashMap子字段的Google应用程序引擎JDO持久性
我有一个父类,我想在其中存储一个HashMap。但是,每次尝试修改该HashMap时,都会出现以下错误: PM org.datanucleus.store.appengine.MetaDataValidator checkForIllegalChildField 警告:无法验证一对多关系com.monsters.server.MonUser.monsters 知道那是怎么回事吗?代码如下: 这是父类的代码Google app engine 带有HashMap子字段的Google应用程序引擎JDO持久性,google-app-engine,persistence,entity-relationship,jdo,hashmap,Google App Engine,Persistence,Entity Relationship,Jdo,Hashmap,我有一个父类,我想在其中存储一个HashMap。但是,每次尝试修改该HashMap时,都会出现以下错误: PM org.datanucleus.store.appengine.MetaDataValidator checkForIllegalChildField 警告:无法验证一对多关系com.monsters.server.MonUser.monsters 知道那是怎么回事吗?代码如下: 这是父类的代码 @PersistenceCapable(identityType = IdentityTy
@PersistenceCapable(identityType = IdentityType.APPLICATION, detachable="true")
public class MonUser {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent(serialized="true", mappedBy = "owner")
@Element(dependent = "true")
private HashMap<String,Monster> monsters;
我在appengine页面上尝试了所有关于人际关系的内容,但似乎没有任何帮助。任何信息都会非常有用
另外,我已经让它与ArrayList等一起使用,但没有hashmaps、hashtables、maps等。如果这有帮助的话。JDO只支持以下内容:
java.util.ArrayList
java.util.HashSet
java.util.LinkedHashSet
java.util.LinkedList
java.util.List
java.util.Set
java.util.SortedSet
java.util.Stack
java.util.TreeSet
java.util.Vector
@Persistent(serialized=“true”,defaultFetchGroup=“true”)
看
要确保更改的持久性,您需要始终创建HashMap的新实例,请参见以下内容的末尾:
@PersistenceCapable(identityType = IdentityType.APPLICATION, detachable="true")
public class Monster {
@PrimaryKey
@Persistent(valueStrategy = IdGeneratorStrategy.IDENTITY)
private Key key;
@Persistent
private MonUser owner;