Teammates: Dev Server: Login Problem

Created on 3 Jun 2017  Â·  43Comments  Â·  Source: TEAMMATES/teammates

I get this error when trying to login.

`WARNING: /admin/adminhomepage
javax.jdo.JDOUserException: Exception converting Account("[email protected]") to an internal key.
at org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManager.getObjectById(DatastoreJDOPersistenceManager.java:70)
at teammates.storage.api.AccountsDb.getAccountEntity(AccountsDb.java:215)
at teammates.storage.api.AccountsDb.getAccount(AccountsDb.java:94)
at teammates.storage.api.AccountsDb.getAccount(AccountsDb.java:105)
at teammates.logic.core.AccountsLogic.isAccountAnInstructor(AccountsLogic.java:72)
at teammates.logic.api.GateKeeper.isInstructor(GateKeeper.java:316)
at teammates.logic.api.GateKeeper.getCurrentUser(GateKeeper.java:49)
at teammates.ui.controller.ControllerServlet.doPost(ControllerServlet.java:50)
at teammates.ui.controller.ControllerServlet.doGet(ControllerServlet.java:43)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
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.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
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.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:509)
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.headerComplete(HttpConnection.java:923)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
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)
NestedThrowablesStackTrace:
Persistent class "Class teammates.storage.entity.Account does not seem to have been enhanced. You may want to rerun the enhancer and check for errors in the output." has no table in the database, but the operation requires it. Please check the specification of the MetaData for this class.
org.datanucleus.store.exceptions.NoTableManagedException: Persistent class "Class teammates.storage.entity.Account does not seem to have been enhanced. You may want to rerun the enhancer and check for errors in the output." has no table in the database, but the operation requires it. Please check the specification of the MetaData for this class.
at org.datanucleus.store.appengine.DatastoreManager.getDatastoreClass(DatastoreManager.java:778)
at org.datanucleus.store.appengine.DatastoreManager.getDatastoreClass(DatastoreManager.java:88)
at org.datanucleus.store.appengine.EntityUtils.determineKind(EntityUtils.java:98)
at org.datanucleus.store.appengine.EntityUtils.determineKind(EntityUtils.java:94)
at org.datanucleus.store.appengine.EntityUtils.idToInternalKey(EntityUtils.java:124)
at org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManager.getObjectById(DatastoreJDOPersistenceManager.java:63)
at teammates.storage.api.AccountsDb.getAccountEntity(AccountsDb.java:215)
at teammates.storage.api.AccountsDb.getAccount(AccountsDb.java:94)
at teammates.storage.api.AccountsDb.getAccount(AccountsDb.java:105)
at teammates.logic.core.AccountsLogic.isAccountAnInstructor(AccountsLogic.java:72)
at teammates.logic.api.GateKeeper.isInstructor(GateKeeper.java:316)
at teammates.logic.api.GateKeeper.getCurrentUser(GateKeeper.java:49)
at teammates.ui.controller.ControllerServlet.doPost(ControllerServlet.java:50)
at teammates.ui.controller.ControllerServlet.doGet(ControllerServlet.java:43)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
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.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
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.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:509)
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.headerComplete(HttpConnection.java:923)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
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)

`

a-DevHelp c.Message

All 43 comments

I think the real culprit is this (appears in the middle of the error message):
"Class teammates.storage.entity.Account does not seem to have been enhanced. You may want to rerun the enhancer and check for errors in the output."
Are you using eclipse or intellij to run the dev server?

@damithc intellij, I encounter the same problem when running through Shell

Intellij has this problem and we are working on a solution. Try using the command line in the meantime.
Also, do a gradlew clean. May be @LiHaoTan can advise further?

@angelosdmg that is strange and running on the command line should work. There are a number of possible reasons why that is the case for IntelliJ though so can we first look at the command line?

Can you try the following?

  1. ./gradlew clean
  2. ./gradlew appengineRun

@LiHaoTan Did this.
Now I get this error
`WARNING: Error for /admin/adminhomepage
java.lang.AssertionError: Date in String is in wrong format.
at teammates.common.util.Assumption.fail(Assumption.java:61)
at teammates.common.util.TimeHelper.convertToDate(TimeHelper.java:252)
at teammates.common.util.Const.(Const.java:104)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:195)
at com.google.appengine.tools.development.agent.runtime.RuntimeHelper.checkRestricted(RuntimeHelper.java:70)
at com.google.appengine.tools.development.agent.runtime.Runtime.checkRestricted(Runtime.java:65)
at teammates.common.exception.TeammatesException.toStringWithStackTrace(TeammatesException.java:32)
at teammates.common.util.LogMessageGenerator.generateActionFailureLogMessage(LogMessageGenerator.java:87)
at teammates.ui.controller.ControllerServlet.doPost(ControllerServlet.java:81)
at teammates.ui.controller.ControllerServlet.doGet(ControllerServlet.java:43)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
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.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
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.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:509)
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.headerComplete(HttpConnection.java:923)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
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)

`

@angelosdmg

Can you do this?
Go to src/main/java/teammates/logic/api/GateKeeper.java, in the method getCurrentUser, add

Logger.getLogger().severe("Locale: " + Locale.getDefault());
Locale.setDefault(Locale.US);

to the start of the method.

Can you show me the locales that get printed out on your output?

and do the following again:

  1. ./gradlew clean
  2. ./gradlew appengineRun

Does it still fail?

@LiHaoTan It's working now but now I get another problem :/
`WARNING: /admin/adminhomepage
javax.jdo.JDOUserException: Exception converting Account("[email protected]") to an internal key.
at org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManager.getObjectById(DatastoreJDOPersistenceManager.java:70)
at teammates.storage.api.AccountsDb.getAccountEntity(AccountsDb.java:215)
at teammates.storage.api.AccountsDb.getAccount(AccountsDb.java:94)
at teammates.storage.api.AccountsDb.getAccount(AccountsDb.java:105)
at teammates.logic.core.AccountsLogic.isAccountAnInstructor(AccountsLogic.java:72)
at teammates.logic.api.GateKeeper.isInstructor(GateKeeper.java:321)
at teammates.logic.api.GateKeeper.getCurrentUser(GateKeeper.java:54)
at teammates.ui.controller.ControllerServlet.doPost(ControllerServlet.java:50)
at teammates.ui.controller.ControllerServlet.doGet(ControllerServlet.java:43)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
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.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
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.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:509)
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.headerComplete(HttpConnection.java:923)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
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)
NestedThrowablesStackTrace:
Persistent class "Class teammates.storage.entity.Account does not seem to have been enhanced. You may want to rerun the enhancer and check for errors in the output." has no table in the database, but the operation requires it. Please check the specification of the MetaData for this class.
org.datanucleus.store.exceptions.NoTableManagedException: Persistent class "Class teammates.storage.entity.Account does not seem to have been enhanced. You may want to rerun the enhancer and check for errors in the output." has no table in the database, but the operation requires it. Please check the specification of the MetaData for this class.
at org.datanucleus.store.appengine.DatastoreManager.getDatastoreClass(DatastoreManager.java:778)
at org.datanucleus.store.appengine.DatastoreManager.getDatastoreClass(DatastoreManager.java:88)
at org.datanucleus.store.appengine.EntityUtils.determineKind(EntityUtils.java:98)
at org.datanucleus.store.appengine.EntityUtils.determineKind(EntityUtils.java:94)
at org.datanucleus.store.appengine.EntityUtils.idToInternalKey(EntityUtils.java:124)
at org.datanucleus.store.appengine.jdo.DatastoreJDOPersistenceManager.getObjectById(DatastoreJDOPersistenceManager.java:63)
at teammates.storage.api.AccountsDb.getAccountEntity(AccountsDb.java:215)
at teammates.storage.api.AccountsDb.getAccount(AccountsDb.java:94)
at teammates.storage.api.AccountsDb.getAccount(AccountsDb.java:105)
at teammates.logic.core.AccountsLogic.isAccountAnInstructor(AccountsLogic.java:72)
at teammates.logic.api.GateKeeper.isInstructor(GateKeeper.java:321)
at teammates.logic.api.GateKeeper.getCurrentUser(GateKeeper.java:54)
at teammates.ui.controller.ControllerServlet.doPost(ControllerServlet.java:50)
at teammates.ui.controller.ControllerServlet.doGet(ControllerServlet.java:43)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
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.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
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.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:509)
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.headerComplete(HttpConnection.java:923)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
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)

`

2017-06-04

@angelosdmg are you running the dev server in IntelliJ because it is working correctly on the command line?

As I have mentioned, it would be preferable to make sure your command line setup works first before testing it on IntelliJ. This is because the current setup has a number of issues that may affect building in IntelliJ.

@LiHaoTan I always prefer the command line, but I run it on Intellij in order to see the mistake. What makes me "crazy" is that when I run it from Intellij this error is created, but when I user the shell and I run the dev server, it cannot find the admin home page, producing "page not found" error!!!
I even cloned the project minutes ago, made the installation all the way from the beginning, but same things happen.

@angelosdmg Ah I see. Well but while the build process in Gradle on the command line and IntelliJ are currently quite similar, there are some differences so the error you see in IntelliJ may not be the same as the one you see on the command line. I am sorry for any confusion.

And because they are currently sharing the same build folder, it can also cause a few problems. So let's do this again without touching IntelliJ at all.

First, do a gradlew.bat clean, this essentially removes the build folder which IntelliJ and Gradle CLI is sharing.

Then do a gradlew.bat appengineRun -Pdisable_daemon, you should now be able to see all the logs and any stack trace on the command line.

Let me know what you see.

@angelosdmg There are two separate issues here; the command line solution fixes the first one (not enhanced) which helps to reveal the second one (locale). @LiHaoTan's instructions are to help you avoid the first one and debug the second one, so do follow his instructions exactly :)

@whipermr5
@LiHaoTan Thanks for your answers. Now, this is the error I get

teammates.common.exception.PageNotFoundException: /admin/adminhomepage
at teammates.ui.controller.ActionFactory.getAction(ActionFactory.java:152)
at teammates.ui.controller.ActionFactory.getAction(ActionFactory.java:142)
at teammates.ui.controller.ControllerServlet.doPost(ControllerServlet.java:66)
at teammates.ui.controller.ControllerServlet.doGet(ControllerServlet.java:43)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
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.socket.dev.DevSocketFilter.doFilter(DevSocketFilter.java:74)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.ResponseRewriterFilter.doFilter(ResponseRewriterFilter.java:128)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.HeaderVerificationFilter.doFilter(HeaderVerificationFilter.java:34)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.api.blobstore.dev.ServeBlobFilter.doFilter(ServeBlobFilter.java:63)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.apphosting.utils.servlet.TransactionCleanupFilter.doFilter(TransactionCleanupFilter.java:43)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.StaticFileFilter.doFilter(StaticFileFilter.java:125)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1157)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectRequest(DevAppServerModulesFilter.java:366)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doDirectModuleRequest(DevAppServerModulesFilter.java:349)
at com.google.appengine.tools.development.DevAppServerModulesFilter.doFilter(DevAppServerModulesFilter.java:116)
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.appengine.tools.development.DevAppEngineWebAppContext.handle(DevAppEngineWebAppContext.java:98)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at com.google.appengine.tools.development.JettyContainerService$ApiProxyHandler.handle(JettyContainerService.java:509)
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.headerComplete(HttpConnection.java:923)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:547)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
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)

{}|||/admin/adminhomepage|||[email protected]%20170606003204998

The correct URL is /admin/adminHomePage, not /admin/adminhomepage.

@whipermr5 this is not where the problem lies. I've tried both. At first, it gets me to the login page (sign in as administraton), but when I click "log in", this is when the problem comes up.

@angelosdmg Visiting /admin/adminhomepage does bring you to the login page due to the /admin/ prefix; that doesn't mean it's correct (it'll 404 after the login, as you have experienced). Your browser might autocorrect /admin/adminHomePage to /admin/adminhomepage after hitting enter if you visited /admin/adminhomepage first (I tried on Chrome and that's what it does); you need to explicitly reject the suggestion.

Hi. The same issue with eclipse(linux) I'm having now...Unable to log in.

@josephinex Which stack trace is it? There are two variants above (not enhanced and page not found).

I was having the same issue, running Intellij on Linux. Then I downgraded Firefox to 46.0.1 and can now login in no problem. Maybe this your issue as well @josephinex.

See Development Guidelines for instructions.

@BrianCoveney did your issue happened to be an * does not seems to be enhanced?

Firefox 46.0 is only required for testing purposes and you should be able to login on all browsers, including higher versions of Firefox.

@LiHaoTan I’ve made a mistake in thinking we need to use Firefox 46.0 to log in.
I just tested it with Chrome 59.0, and can log in fine.

My error - copy and pasting the URL (see screenshot) without changing the base URL to http://localhost:8888
login

@BrianCoveney can you try creating an instructor using that link? It should still work though the status incorrectly shows that it failed.

It should be a regression recently, you can see #7484 for more information. Sorry about that.

@LiHaoTan I can create an instructor with following this link:
http://localhost:8888/page/instructorCourseJoin?key=XYZ...

I can't with this link because we are no longer pointing to my local server:
https://teammates-brian.appspot.com/page/instructorCourseJoin?key=XYZ...

This was the mistake I was making. I thought it was a Firefox issue, but it was an oversight on my part - following the wrong link.

Everything is working for me now, thanks.

@whipermr5 There are 2 errors:

  • javax.jdo.JDOUserException: Exception converting Account("[email protected]") to an internal key.

and

  • Persistent class "Class teammates.storage.entity.Account does not seem to have been enhanced. You may want to rerun the enhancer and check for errors in the output." has no table in the database, but the operation requires it. Please check the specification of the MetaData for this class.
    org.datanucleus.store.exceptions.NoTableManagedException: Persistent class "Class teammates.storage.entity.Account does not seem to have been enhanced. You may want to rerun the enhancer and check for errors in the output." has no table in the database, but the operation requires it. Please check the specification of the MetaData for this class.
    at org.datanucleus.store.appengine.DatastoreManager.getDatastoreClass(DatastoreManager.java:778)

@josephinex Are you running Eclipse or IntelliJ?

@whipermr5 Eclipse

@josephinex Apologies for missing that. Have you completed step 4 of the Eclipse setup (particularly, the ORM Enhancement part)?

@whipermr5 Just double-checked it, and everything is fine. It's set up.

@josephinex Try doing a clean and build.

That didn't help. The issue still persists.

@josephinex Does it work if you run the dev server from the command line instead of Eclipse?

It doesn't, I mean I still get those errors. But I don't have issues like @angelosdmg had (page not found).

@josephinex Can you paste the output of ./gradlew appengineRun here?

Starting a new Gradle Daemon for this build (subsequent builds will be faster).
:appengineDownloadSdk
:compileJava
:processResources UP-TO-DATE
:classes
:enhancerRun
:war UP-TO-DATE
:appengineExplodeApp
:removeDuplicateLibs
:appengineRun

BUILD SUCCESSFUL

./gradlew appengineStop
./gradlew appengineRun -Pdisable_daemon

Then try to login again and see the error message from the console.

@josephinex Deleting the directory src/main/webapp/WEB-INF/classes/ and rerunning ./gradlew appengineRun should fix the issue (for running from command line).

As for your Eclipse setup, there's still something wrong. Do you mind taking a screenshot of Google → App Engine and Google → App Engine → ORM in preferences? Also, there should be a Datanucleus console always open that shows how many classes it has enhanced. Do you see it?

@whipermr5 , I deleted /classes and now I can log in and that's great! However when I run the application in Eclipse, I get several issues.
Here are the screenshots of app engine and ORM:

screenshot at 2017-06-19 19-56-05
screenshot at 2017-06-19 19-55-37

Also, there should be a Datanucleus console always open that shows how many classes it has enhanced. Do you see it?

About that, I did see it, but it always showed that it enhanced 0 classes.

@josephinex There shouldn't be a period after *.java in the ORM entry.

Yeah, I missed that. Thanks for noticing. Now it shows that it enhanced 10 classes, but still doesn't work when launching from eclipse.

What's the error now?

Oh, never mind. I restarted eclipse and now everything works fine. Thanks for help!

@angelosdmg I'm assuming https://github.com/TEAMMATES/teammates/issues/7437#issuecomment-306246261 solved your issue. Let me know if it didn't :)

Was this page helpful?
0 / 5 - 0 ratings