yup thats right, there is something wrong. But there must be something special in your situation as I've never seen this in production yet.
Can you please create a JIRA so we can track it? Please also add * which version of owb * which servlet container * some info whats going on in your thread > InjectionTargetProducer.preDestroy(InjectionTargetProducer.java:132) It seems that you have a @PreDestroy method which has a @SessionScoped bean as injection point. Can you please reduce your session timeout to 2 minutes and set a breakpoint to the place where the Exception gets thrown (WebContextsService.java:793)? And then you should be able to see which Bean did cause this problem if you go down call stack. And now some info about why I hacked the lazy session start: Initially we started the SessionContext for each and every request. But that means that we also did this for JSF Resource requests (png, css, etc) or other requests which simply don't need any session. To reduce the number of sessions we now only request one if a SessionScoped bean gets requested. This was especially hard in our case as we configured 1 node to only serve all the resources of our app (and all our other nodes only serve 'real' pages) - which was another nice speed bump ;) You can look at MyFaces / Jakob Korherrs staticresourcehandler if you have a performance intense app. LieGrue, strub >________________________________ > From: Thomas Andraschko <[email protected]> >To: [email protected]; Mark Struberg <[email protected]> >Sent: Tuesday, 16 April 2013, 9:00 >Subject: Re: Could NOT lazily initialize session context because of null >RequestContext > > > >Here is the stacktrace: > > at >org.apache.webbeans.web.context.WebContextsService.lazyStartSessionContext(WebContextsService.java:793) > at >org.apache.webbeans.web.context.WebContextsService.getSessionContext(WebContextsService.java:708) > at >org.apache.webbeans.web.context.WebContextsService.getCurrentContext(WebContextsService.java:248) > at >org.apache.webbeans.context.ContextFactory.getStandardContext(ContextFactory.java:185) > at >org.apache.webbeans.container.BeanManagerImpl.getContext(BeanManagerImpl.java:307) > at >org.apache.webbeans.portable.creation.AbstractProducer.getCreationalContext(AbstractProducer.java:105) > at >org.apache.webbeans.portable.creation.InjectionTargetProducer.preDestroy(InjectionTargetProducer.java:132) > at >org.apache.webbeans.component.InjectionTargetWrapper.preDestroy(InjectionTargetWrapper.java:98) > at >org.apache.webbeans.component.AbstractOwbBean.destroy(AbstractOwbBean.java:251) > at >org.apache.webbeans.context.AbstractContext.destroyInstance(AbstractContext.java:205) > at >org.apache.webbeans.context.AbstractContext.destroy(AbstractContext.java:227) > at >org.apache.webbeans.web.context.SessionContextManager.destroySessionContextWithSessionId(SessionContextManager.java:84) > at >org.apache.webbeans.web.context.WebContextsService.destroySessionContext(WebContextsService.java:495) > at >org.apache.webbeans.web.context.WebContextsService.endContext(WebContextsService.java:216) > at >org.apache.webbeans.servlet.WebBeansConfigurationListener.sessionDestroyed(WebBeansConfigurationListener.java:197) > at >org.eclipse.jetty.server.session.AbstractSessionManager.removeSession(AbstractSessionManager.java:801) > at >org.eclipse.jetty.server.session.AbstractSession.timeout(AbstractSession.java:340) > at >org.eclipse.jetty.server.session.HashSessionManager.scavenge(HashSessionManager.java:320) > at >org.eclipse.jetty.server.session.HashSessionManager$2.run(HashSessionManager.java:282) > at java.util.TimerThread.mainLoop(Timer.java:555) > at java.util.TimerThread.run(Timer.java:505) > >It happens when the session expires. >Any idea? IMO it should not try to lazy start a session if the session will be >destroyed. > > > > >2013/4/12 Thomas Andraschko <[email protected]> > >Hi Mark, >> >>hmm, weird. I always get them at runtime. 7-8 times today. I only changed >>some pages and layout stuff and refreshed the page. >>Maybe it's because Jetty's change scanning. >>I will try it with Tomcat on Monday. >> >> >> >> >> >>2013/4/12 Mark Struberg <[email protected]> >> >>Hi Thomas, this sometimes happens at container startup if the container code >>invokes some SessionScoped event. But the Session is only available in a >>request of course. this should be in the code already since a long time >>(1.1.2 or so) >>> >>>LieGrue, >>>strub >>> >>> >>> >>> >>> >>> >>> >>>>________________________________ >>>> From: Thomas Andraschko <[email protected]> >>>>To: [email protected] >>>>Sent: Friday, April 12, 2013 4:40 PM >>>>Subject: Could NOT lazily initialize session context because of null >>>>RequestContext >>>> >>>> >>>> >>>>Hi, >>>> >>>> i have many times this warning during development: >>>> >>>> >>>>WARNING: Could NOT lazily initialize session context because of null >>>>RequestContext >>>> >>>> >>>>Why does this occur and how can i avoid it? >>>>I never mentioned this error in my old application which runned perfectly >>>>with 1.1.6 (or 1.1.5, cant remember) >>>> >>>>Regards, >>>>Thomas >>>> >>>> >>>> >> > > >
