Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 6.1.21
-
Fix Version/s: 6.1.25
-
Component/s: Servlet
-
Labels:None
-
Environment:HideOS: RHEL 5 x86/x86-64;
JVM: Oracle JRockit jrockit-R27.5.0-jdk1.6.0_03 / SUN JVM JDK 1.6.0_14;
AppServer: JBoss-4.2.2.GA with Jetty-6.1.21 Embedded;
JSF: 1.2_13 state save mode - server;
JBoss SEAM: 2.0.3.CR1;
Browsers: Firefox 3.5.x, Opera 10, Chrome;ShowOS: RHEL 5 x86/x86-64; JVM: Oracle JRockit jrockit-R27.5.0-jdk1.6.0_03 / SUN JVM JDK 1.6.0_14; AppServer: JBoss-4.2.2.GA with Jetty-6.1.21 Embedded; JSF: 1.2_13 state save mode - server; JBoss SEAM: 2.0.3.CR1; Browsers: Firefox 3.5.x, Opera 10, Chrome;
-
Number of attachments :
Description
I seen this error has been fixed in pasted version of Jetty.
But we obtain this error again:
------------------
HTTP ERROR 500
Problem accessing /tve-manager/index.seam. Reason:
Could not instantiate Seam component: org.jboss.seam.security.identity
Caused by:
org.jboss.seam.InstantiationException: Could not instantiate Seam component: org.jboss.seam.security.identity
at org.jboss.seam.Component.newInstance(Component.java:1986)
at org.jboss.seam.contexts.Contexts.startup(Contexts.java:304)
at org.jboss.seam.contexts.Contexts.startup(Contexts.java:278)
at org.jboss.seam.contexts.Lifecycle.beginSession(Lifecycle.java:191)
at org.jboss.seam.contexts.ServletLifecycle.beginSession(ServletLifecycle.java:124)
at org.jboss.seam.servlet.SeamListener.sessionCreated(SeamListener.java:44)
at org.mortbay.jetty.servlet.AbstractSessionManager.addSession(AbstractSessionManager.java:577)
at org.mortbay.jetty.servlet.AbstractSessionManager.newHttpSession(AbstractSessionManager.java:415)
at org.mortbay.jetty.Request.getSession(Request.java:1227)
at org.jboss.seam.mock.MockExternalContext.getSessionMap(MockExternalContext.java:349)
at org.jboss.seam.contexts.FacesLifecycle.beginExceptionRecovery(FacesLifecycle.java:69)
at org.jboss.seam.web.ExceptionFilter.endWebRequestAfterException(ExceptionFilter.java:96)
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:70)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
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 org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.handler.StatisticsHandler.handle(StatisticsHandler.java:53)
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:536)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:915)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:405)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
Caused by: java.lang.IllegalStateException: No SessionHandler or SessionManager
at org.mortbay.jetty.Request.getSession(Request.java:1209)
at com.sun.faces.context.SessionMap.getSession(ExternalContextImpl.java:1002)
at com.sun.faces.context.SessionMap.get(ExternalContextImpl.java:962)
at org.jboss.seam.contexts.ServerConversationContext.get(ServerConversationContext.java:102)
at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:189)
at org.jboss.seam.Component.getInstance(Component.java:1842)
at org.jboss.seam.core.Events.raiseEvent(Events.java:76)
at org.jboss.seam.Component.newInstance(Component.java:1979)
... 35 more
Caused by:
java.lang.IllegalStateException: No SessionHandler or SessionManager
at org.mortbay.jetty.Request.getSession(Request.java:1209)
at com.sun.faces.context.SessionMap.getSession(ExternalContextImpl.java:1002)
at com.sun.faces.context.SessionMap.get(ExternalContextImpl.java:962)
at org.jboss.seam.contexts.ServerConversationContext.get(ServerConversationContext.java:102)
at org.jboss.seam.contexts.Contexts.lookupInStatefulContexts(Contexts.java:189)
at org.jboss.seam.Component.getInstance(Component.java:1842)
at org.jboss.seam.core.Events.raiseEvent(Events.java:76)
at org.jboss.seam.Component.newInstance(Component.java:1979)
at org.jboss.seam.contexts.Contexts.startup(Contexts.java:304)
at org.jboss.seam.contexts.Contexts.startup(Contexts.java:278)
at org.jboss.seam.contexts.Lifecycle.beginSession(Lifecycle.java:191)
at org.jboss.seam.contexts.ServletLifecycle.beginSession(ServletLifecycle.java:124)
at org.jboss.seam.servlet.SeamListener.sessionCreated(SeamListener.java:44)
at org.mortbay.jetty.servlet.AbstractSessionManager.addSession(AbstractSessionManager.java:577)
at org.mortbay.jetty.servlet.AbstractSessionManager.newHttpSession(AbstractSessionManager.java:415)
at org.mortbay.jetty.Request.getSession(Request.java:1227)
at org.jboss.seam.mock.MockExternalContext.getSessionMap(MockExternalContext.java:349)
at org.jboss.seam.contexts.FacesLifecycle.beginExceptionRecovery(FacesLifecycle.java:69)
at org.jboss.seam.web.ExceptionFilter.endWebRequestAfterException(ExceptionFilter.java:96)
at org.jboss.seam.web.ExceptionFilter.doFilter(ExceptionFilter.java:70)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.web.RedirectFilter.doFilter(RedirectFilter.java:45)
at org.jboss.seam.servlet.SeamFilter$FilterChainImpl.doFilter(SeamFilter.java:69)
at org.jboss.seam.servlet.SeamFilter.doFilter(SeamFilter.java:158)
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 org.mortbay.jetty.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:230)
at org.mortbay.jetty.handler.HandlerCollection.handle(HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.handler.StatisticsHandler.handle(StatisticsHandler.java:53)
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:536)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:915)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:539)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:405)
at org.mortbay.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:409)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582
--------------------------------------------------
How I understand, JSF don't make RESTORE_VIEW for login page, from absent session in which store JSF tree model.
Why Jetty don't find No SessionHandler or SessionManager ?
Thanks in advance.
Eugene,
Can you describe in more detail the sequence of events? It would be good if you could provide a small webapp that demonstrated the problem as well.
Not being familiar with the internal operation of seam and faces, its difficult for me to comment. However, I can tell you that the Request object
obtains a SessionManager as it passes through the SessionHandler, which you can see on the stack trace before it enters the filter chain. I don't see why the sessionManager reference would be set back to null, unless it passes through a context which has no SessionHandler, and I don't see that on the stack trace.
Can I suggest that you turn up the jetty logging to DEBUG to see if you can obtain more information?
cheers,
Jan