Sure, sorry it was such a headache for you. When I've got a fix ready I'll let you know.
On Mon, Dec 14, 2009 at 10:57 AM, bryce cottam <[email protected]> wrote: > good point, I kinda got lost in the exceptions I was getting :) > I wound up sorting it out by making an embedded class instead of > having multiple parent classes for a given child class. Although, it > would be nice if a child class could have different parent types. > > Thanks for all your help Max. > -bryce > > > On Mon, Dec 14, 2009 at 11:30 AM, Max Ross (Google) > <[email protected] <maxr%[email protected]>> wrote: > > I believe the exception you're getting is the result of having multiple > > parents for the same type, and unfortunately that bug isn't fixed in this > > release. The bugs fixed in this release are: > > > > - Incorrect exception for multiple fields of same type > > http://code.google.com/p/datanucleus-appengine/issues/detail?id=172 > > > > - Non-persistent base classes do not work > > http://code.google.com/p/datanucleus-appengine/issues/detail?id=169 > > > > - Relationships in abstract base classes don't work > > http://code.google.com/p/datanucleus-appengine/issues/detail?id=171 > > > > > > On Sat, Dec 12, 2009 at 1:09 AM, bryce cottam <[email protected]> wrote: > >> > >> hmmm.... I think I may have installed the patch wrong perhaps. I > >> still get the same error. > >> I'm using the same code I sent you for the test case Max. Do you see > >> any tell-tale signs in here that indicate I've mis-configured > >> something? I have datanucleus-appengine-1.0.4.1-RC2.jar on my > >> classpath and I removed the previous one (pretty much the same jar but > >> with .final.jar as it's name. I followed the steps outlined by > >> Jonathan. > >> > >> here is the stack trace: > >> java.lang.ClassCastException: oid is not instanceof > >> javax.jdo.identity.ObjectIdentity > >> at > >> com.resmark.model.RatePlan.jdoCopyKeyFieldsFromObjectId(RatePlan.java) > >> at > >> > org.datanucleus.store.mapped.mapping.PersistenceCapableMapping.setObjectAsValue(PersistenceCapableMapping.java:657) > >> at > >> > org.datanucleus.store.mapped.mapping.PersistenceCapableMapping.setObject(PersistenceCapableMapping.java:364) > >> at > >> > org.datanucleus.store.appengine.DatastoreRelationFieldManager$1.setObjectViaMapping(DatastoreRelationFieldManager.java:128) > >> at > >> > org.datanucleus.store.appengine.DatastoreRelationFieldManager$1.apply(DatastoreRelationFieldManager.java:104) > >> at > >> > org.datanucleus.store.appengine.DatastoreRelationFieldManager.storeRelations(DatastoreRelationFieldManager.java:78) > >> at > >> > org.datanucleus.store.appengine.DatastoreFieldManager.storeRelations(DatastoreFieldManager.java:812) > >> at > >> > org.datanucleus.store.appengine.DatastorePersistenceHandler.insertPostProcess(DatastorePersistenceHandler.java:288) > >> at > >> > org.datanucleus.store.appengine.DatastorePersistenceHandler.insertObjects(DatastorePersistenceHandler.java:241) > >> at > >> > org.datanucleus.store.appengine.DatastorePersistenceHandler.insertObject(DatastorePersistenceHandler.java:225) > >> at > >> > org.datanucleus.state.JDOStateManagerImpl.internalMakePersistent(JDOStateManagerImpl.java:3185) > >> at > >> > org.datanucleus.state.JDOStateManagerImpl.makePersistent(JDOStateManagerImpl.java:3161) > >> at > >> > org.datanucleus.ObjectManagerImpl.persistObjectInternal(ObjectManagerImpl.java:1298) > >> at > >> > org.datanucleus.ObjectManagerImpl.persistObject(ObjectManagerImpl.java:1175) > >> at > >> > org.datanucleus.jdo.JDOPersistenceManager.jdoMakePersistent(JDOPersistenceManager.java:669) > >> at > >> > org.datanucleus.jdo.JDOPersistenceManager.makePersistent(JDOPersistenceManager.java:694) > >> at com.resmark.JdoTestServlet.create(JdoTestServlet.java:183) > >> at com.resmark.JdoTestServlet.doTest(JdoTestServlet.java:90) > >> at com.resmark.JdoTestServlet.doGet(JdoTestServlet.java:33) > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:693) > >> at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) > >> at > >> org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:487) > >> at > >> > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1093) > >> at > >> > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43) > >> at > >> > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > >> at > >> > com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:121) > >> at > >> > org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1084) > >> at > >> org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:360) > >> at > >> > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216) > >> at > >> org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181) > >> at > >> org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:712) > >> at > >> org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:405) > >> at > >> > com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:70) > >> at > >> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > >> at > >> > com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:352) > >> at > >> org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139) > >> at org.mortbay.jetty.Server.handle(Server.java:313) > >> at > >> org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:506) > >> at > >> > org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:830) > >> at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:514) > >> at > org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:211) > >> at > org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:381) > >> at > >> > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:396) > >> at > >> > org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442) > >> > >> I've got to be missing something. :( > >> > >> thanks, > >> -bryce > >> > >> > >> On Fri, Dec 11, 2009 at 8:54 AM, bryce cottam <[email protected]> > wrote: > >> > Thanks a million Max, I've been on the road for a few days but I'm > >> > looking > >> > forward to trying this out when I get back. Thanks for the link > >> > Jonathan. > >> > > >> > -bryce > >> > > >> > On Dec 11, 2009 6:50 AM, "Jonathan 'J5' Cook" > >> > <[email protected]> wrote: > >> > > >> > Thanks for the fix, Max and perfect timing for me :) I just upgraded > >> > to 1.2.8 and started having this issue last night. > >> > > >> > For those who don't/didn't already know (like myself), here is a link > >> > to instructions Max wrote on how to install a new plugin version into > >> > the SDK: > >> > > >> > > >> > > http://code.google.com/p/datanucleus-appengine/wiki/HowToUpdateTheSDKWithANewPluginVersion > >> > > >> > Regards, > >> > J5 > >> > > >> > On Dec 10, 11:59 am, "Max Ross (Google)" > >> > <[email protected]<maxr%[email protected]> > > > >> > wrote: > >> >> I've posted a bug fix release candidate containing this fix > >> >> > >> >> here: > http://datanucleus-appengine.googlecode.com/files/appengine-orm-1.0.4... > >> > > >> >> > On Tue, Dec 8, 2009 at 5:26 PM, bryce cottam <[email protected]> > >> >> > wrote: > >> >> > > > That's great news Ma... > >> > > >> >> > On Dec 8, 2009 5:20 PM, "Max Ross (Google)" > >> >> > <[email protected] <maxr%[email protected]>< > maxr%[email protected] <maxr%[email protected]>>> > >> > > >> >> > wrote: > > > I've filed bug > > >> >> > > > http://code.google.com/p/datanucleus-appengine/issues/detail?id=1... > >> > > >> >> > On Tue, Dec 8, 2009 at 11:29 AM, bryce cottam <[email protected]> > >> >> > wrote: > >> >> > > > >> > > It's all goo... > >> > > >> >> > > >> >> > > >> >> > [email protected]<google-appengine-java%[email protected]> > <google-appengine-java%[email protected]<google-appengine-java%[email protected]> > > > >> > > >> >> > . > > For more options, visit this group at > > >> >> > >http://groups.google.com/group/google-appengine-j... > >> > >> -- > >> > >> 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]<google-appengine-java%[email protected]> > . > >> For more options, visit this group at > >> http://groups.google.com/group/google-appengine-java?hl=en. > >> > >> > > > > -- > > > > 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]<google-appengine-java%[email protected]> > . > > For more options, visit this group at > > http://groups.google.com/group/google-appengine-java?hl=en. > > > > -- > > 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]<google-appengine-java%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/google-appengine-java?hl=en. > > > -- 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.
