I get the same error many times on my local dev instance. I restart the App and then it goes away. This error needs to be debugged more.
On Apr 13, 1:23 pm, Juan González <[email protected]> wrote: > Hi all, > I have a random issue when testing my application locally. From > time to time, when I use PersistenceManager.getObjectById() I receive > the following exception: > > java.lang.UnsupportedOperationException > at > org.datanucleus.store.appengine.EntityUtils.getPropertyName(EntityUtils.jav a: > 62) > at > org.datanucleus.store.appengine.DatastoreFieldManager.getPropertyName(Datas > toreFieldManager.java: > 1073) > at > org.datanucleus.store.appengine.DatastoreFieldManager.fetchObjectField(Data > storeFieldManager.java: > 309) > at > org.datanucleus.state.AbstractStateManager.replacingObjectField(AbstractSta > teManager.java: > 1197) > at > org.ugr.rtpstat.server.orm.UsuarioRegistrado.jdoReplaceField(UsuarioRegistr > ado.java) > at > org.ugr.rtpstat.server.orm.UsuarioRegistrado.jdoReplaceFields(UsuarioRegist > rado.java) > at > org.datanucleus.state.JDOStateManagerImpl.replaceFields(JDOStateManagerImpl > .java: > 2772) > at > org.datanucleus.state.JDOStateManagerImpl.replaceFields(JDOStateManagerImpl > .java: > 2791) > at > org.datanucleus.store.appengine.DatastorePersistenceHandler.fetchObject(Dat > astorePersistenceHandler.java: > 466) > at > org.datanucleus.state.JDOStateManagerImpl.validate(JDOStateManagerImpl.java : > 4263) > at > org.datanucleus.ObjectManagerImpl.findObject(ObjectManagerImpl.java: > 2444) > at > org.datanucleus.jdo.JDOPersistenceManager.getObjectById(JDOPersistenceManag > er.java: > 1671) > at > org.datanucleus.jdo.JDOPersistenceManager.getObjectById(JDOPersistenceManag > er.java: > 1767) > at > org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManager.getObjec > tById(DatastoreJDOPersistenceManager.java: > 73) > at > org.ugr.rtpstat.server.RtpstatServiceImpl.getRegisteredUser(RtpstatServiceI > mpl.java: > 88) > at > org.ugr.rtpstat.server.RtpstatServiceImpl.getRegisteredUser(RtpstatServiceI > mpl.java: > 79) > at > org.ugr.rtpstat.server.RtpstatServiceImpl.isRegisteredUser(RtpstatServiceIm > pl.java: > 204) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java: > 39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImp > l.java: > 25) > at java.lang.reflect.Method.invoke(Method.java:597) > at > com.google.appengine.tools.development.agent.runtime.Runtime.invoke(Runtime > .java: > 100) > at > com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java: > 562) > at > com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServi > ceServlet.java: > 188) > at > com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServi > ceServlet.java: > 224) > at > com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(Abstract > RemoteServiceServlet.java: > 62) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:713) > at javax.servlet.http.HttpServlet.service(HttpServlet.java:806) > at org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java: > 511) > at org.mortbay.jetty.servlet.ServletHandler > $CachedChain.doFilter(ServletHandler.java:1166) > at > com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFi > lter.java: > 51) > at org.mortbay.jetty.servlet.ServletHandler > $CachedChain.doFilter(ServletHandler.java:1157) > at > com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(Trans > actionCleanupFilter.java: > 43) > at org.mortbay.jetty.servlet.ServletHandler > $CachedChain.doFilter(ServletHandler.java:1157) > at > com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFile > Filter.java: > 122) > at org.mortbay.jetty.servlet.ServletHandler > $CachedChain.doFilter(ServletHandler.java:1157) > at > org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java: > 388) > at > org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java: > 216) > at > org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java: > 182) > at > org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java: > 765) > at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java: > 418) > at > com.google.apphosting.utils.jetty.DevAppEngineWebAppContext.handle(DevAppEn > gineWebAppContext.java: > 70) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: > 152) > at com.google.appengine.tools.development.JettyContainerService > $ApiProxyHandler.handle(JettyContainerService.java:349) > at > org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java: > 152) > at org.mortbay.jetty.Server.handle(Server.java:326) > at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java: > 542) > at org.mortbay.jetty.HttpConnection > $RequestHandler.content(HttpConnection.java:938) > at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:755) > at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:218) > at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404) > at > org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java: > 409) > at org.mortbay.thread.QueuedThreadPool > $PoolThread.run(QueuedThreadPool.java:582) > > The thing is that when this happens, it happens for a while and I can > only resolve it by an undeterminate combination of cleaning the > project, cleaning the browser cache, closing the browser, login out of > the app, turning on a candle next to the computer, and more. in any > order. > > Some times it starts working again after just a couple steps, another > times it persists for a while disappearing at any random moment. > > Looking at the code indicated by the exception I find the following: > > // If we're dealing with embeddables, the column name override > // will show up as part of the column meta data. > if (ammd.getColumnMetaData() != null && > ammd.getColumnMetaData().length > 0) { > if (ammd.getColumnMetaData().length != 1) { > // TODO(maxr) throw something more appropriate > throw new UnsupportedOperationException(); > } > return ammd.getColumnMetaData()[0].getName(); > } > > Can anybody explain me what's going on here? > > Thanks -- You received this message because you are subscribed to the Google Groups "Google App Engine" 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?hl=en.
