Hi, Here is my doubt...
Suppose I created a new Entity : Entity ety = new Entity();
Created a new persistent manager and made it persistent :
pm.makePersisent(ety);
Detached it and cached to memcache : cache.put("myentity",
pm.detachCopy(ety));
pm.close();
now, in the same request or subsequent request, I need that entity again.
So, I picked it from memcache : Entity ety = cache.get("myentity");
Made some changes : ety.doSomeChange();
Opened a new persistent manager and persisted it : pm.makePersistent(ety);
Now I want to update memcache also : cache.put("myentity", *
pm.detachCopy(ety)*); // line 204
pm.close();
Is it required to detach entity second time? While trying to detach is
second time I am getting following exception;
javax.jdo.JDOUserException: Object of type "xyz.Entity" and identity "ety"
was not detached correctly. Please consult the log for any possible
information.
at
org.datanucleus.jdo.NucleusJDOHelper.getJDOExceptionForNucleusException(NucleusJDOHelper.java:375)
at
org.datanucleus.jdo.JDOPersistenceManager.jdoDetachCopy(JDOPersistenceManager.java:1110)
at
org.datanucleus.jdo.JDOPersistenceManager.detachCopy(JDOPersistenceManager.java:1134)
at HelperClass.makePersistent(HelperClass.java:204)
.....
I am not able to point out any other reason for this exception.
Following is my Entity Class :
@PersistenceCapable(identityType = IdentityType.APPLICATION, detachable =
"true")
public class Entity implements Serializable{
@SuppressWarnings("unused")
@Persistent(primaryKey = "true")
private String ID;
@Persistent
private String Version;
@Persistent
private Boolean Enabled;
@Persistent
private Date TimeStamp;
@Persistent
private LinkedList<Key> Permissions;
@SuppressWarnings("unused")
@Persistent
private ModuleType Type; // ModuleType is an Enum Type
-- You received this message because you are subscribed to the Google Groups "Google App Engine for Java" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to [email protected].
For more options, visit this group at http://groups.google.com/group/google-appengine-java?hl=en.
