You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Bryan Lewis <br...@maine.rr.com> on 2006/01/30 16:54:43 UTC
IllegalStateException
After upgrading our Tap3 apps to Tap4, I'm seeing an
"IllegalStateException: setAttribute: Session already invalidated".
(Stack trace below.) It happens whenever a user manually logs out,
when we call getRestartService().service(getRequestCycle()). It's not
really a problem because it's only a stack-trace -- the user doesn't see
anything wrong -- but it'll clutter up our logs with about a hundred
pointless exception traces a day. Yeah, I know, it's a tough life.
The exception occurs not on session.invalidate() but a bit later when
ApplicationStateManager.flush() causes a WebSession.store(). Tap3 used
to have a line of code:
// Make isStateful() return false, so that the servlet doesn't
// try to store the engine back into the (now invalid) session.
_stateful = false;
It would be nice if a similar thing could be done in Tap4. Worst case,
I could override Engine.service() but I'm trying to wean myself away
from engine overriding.
java.lang.IllegalStateException: setAttribute: Session already invalidated
org.apache.catalina.session.StandardSession.setAttribute(StandardSession.java:1229)
org.apache.catalina.session.StandardSessionFacade.setAttribute(StandardSessionFacade.java:129)
org.apache.tapestry.web.ServletWebSession.setAttribute(ServletWebSession.java:62)
org.apache.tapestry.engine.state.SessionScopeManager.store(SessionScopeManager.java:90)
$StateObjectPersistenceManager_10918d5a17f.store($StateObjectPersistenceManager_10918d5a17f.java)
org.apache.tapestry.engine.state.StateObjectManagerImpl.store(StateObjectManagerImpl.java:55)
org.apache.tapestry.engine.state.ApplicationStateManagerImpl.flush(ApplicationStateManagerImpl.java:87)
$ApplicationStateManager_10918d59fcb.flush($ApplicationStateManager_10918d59fcb.java)
$ApplicationStateManager_10918d59fcc.flush($ApplicationStateManager_10918d59fcc.java)
org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:290)
org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60)
$WebRequestServicer_10918d5a0ab.service($WebRequestServicer_10918d5a0ab.java)
$WebRequestServicer_10918d5a0a7.service($WebRequestServicer_10918d5a0a7.java)
org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:56)
$ServletRequestServicer_10918d5a08b.service($ServletRequestServicer_10918d5a08b.java)
org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55)
$ServletRequestServicerFilter_10918d5a087.service($ServletRequestServicerFilter_10918d5a087.java)
$ServletRequestServicer_10918d5a08d.service($ServletRequestServicer_10918d5a08d.java)
org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52)
$ServletRequestServicerFilter_10918d5a085.service($ServletRequestServicerFilter_10918d5a085.java)
$ServletRequestServicer_10918d5a08d.service($ServletRequestServicer_10918d5a08d.java)
org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53)
$ServletRequestServicerFilter_10918d5a089.service($ServletRequestServicerFilter_10918d5a089.java)
$ServletRequestServicer_10918d5a08d.service($ServletRequestServicer_10918d5a08d.java)
$ServletRequestServicer_10918d59fff.service($ServletRequestServicer_10918d59fff.java)
org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:123)
---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
Re: IllegalStateException
Posted by Geoff Longman <gl...@gmail.com>.
Hmm. Any Tap4 users out there (I'm getting there) care to share how
they are killing a session?
Geoff
On 1/30/06, Bryan Lewis <br...@maine.rr.com> wrote:
> After upgrading our Tap3 apps to Tap4, I'm seeing an
> "IllegalStateException: setAttribute: Session already invalidated".
> (Stack trace below.) It happens whenever a user manually logs out,
> when we call getRestartService().service(getRequestCycle()). It's not
> really a problem because it's only a stack-trace -- the user doesn't see
> anything wrong -- but it'll clutter up our logs with about a hundred
> pointless exception traces a day. Yeah, I know, it's a tough life.
>
> The exception occurs not on session.invalidate() but a bit later when
> ApplicationStateManager.flush() causes a WebSession.store(). Tap3 used
> to have a line of code:
>
> // Make isStateful() return false, so that the servlet doesn't
> // try to store the engine back into the (now invalid) session.
> _stateful = false;
>
> It would be nice if a similar thing could be done in Tap4. Worst case,
> I could override Engine.service() but I'm trying to wean myself away
> from engine overriding.
>
>
> java.lang.IllegalStateException: setAttribute: Session already invalidated
> org.apache.catalina.session.StandardSession.setAttribute(StandardSession.java:1229)
> org.apache.catalina.session.StandardSessionFacade.setAttribute(StandardSessionFacade.java:129)
> org.apache.tapestry.web.ServletWebSession.setAttribute(ServletWebSession.java:62)
> org.apache.tapestry.engine.state.SessionScopeManager.store(SessionScopeManager.java:90)
> $StateObjectPersistenceManager_10918d5a17f.store($StateObjectPersistenceManager_10918d5a17f.java)
> org.apache.tapestry.engine.state.StateObjectManagerImpl.store(StateObjectManagerImpl.java:55)
> org.apache.tapestry.engine.state.ApplicationStateManagerImpl.flush(ApplicationStateManagerImpl.java:87)
> $ApplicationStateManager_10918d59fcb.flush($ApplicationStateManager_10918d59fcb.java)
> $ApplicationStateManager_10918d59fcc.flush($ApplicationStateManager_10918d59fcc.java)
> org.apache.tapestry.engine.AbstractEngine.service(AbstractEngine.java:290)
> org.apache.tapestry.services.impl.InvokeEngineTerminator.service(InvokeEngineTerminator.java:60)
> $WebRequestServicer_10918d5a0ab.service($WebRequestServicer_10918d5a0ab.java)
> $WebRequestServicer_10918d5a0a7.service($WebRequestServicer_10918d5a0a7.java)
> org.apache.tapestry.services.impl.WebRequestServicerPipelineBridge.service(WebRequestServicerPipelineBridge.java:56)
> $ServletRequestServicer_10918d5a08b.service($ServletRequestServicer_10918d5a08b.java)
> org.apache.tapestry.request.DecodedRequestInjector.service(DecodedRequestInjector.java:55)
> $ServletRequestServicerFilter_10918d5a087.service($ServletRequestServicerFilter_10918d5a087.java)
> $ServletRequestServicer_10918d5a08d.service($ServletRequestServicer_10918d5a08d.java)
> org.apache.tapestry.multipart.MultipartDecoderFilter.service(MultipartDecoderFilter.java:52)
> $ServletRequestServicerFilter_10918d5a085.service($ServletRequestServicerFilter_10918d5a085.java)
> $ServletRequestServicer_10918d5a08d.service($ServletRequestServicer_10918d5a08d.java)
> org.apache.tapestry.services.impl.SetupRequestEncoding.service(SetupRequestEncoding.java:53)
> $ServletRequestServicerFilter_10918d5a089.service($ServletRequestServicerFilter_10918d5a089.java)
> $ServletRequestServicer_10918d5a08d.service($ServletRequestServicer_10918d5a08d.java)
> $ServletRequestServicer_10918d59fff.service($ServletRequestServicer_10918d59fff.java)
> org.apache.tapestry.ApplicationServlet.doService(ApplicationServlet.java:123)
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: tapestry-user-help@jakarta.apache.org
>
>
--
The Spindle guy. http://spindle.sf.net
Get help with Spindle:
http://lists.sourceforge.net/mailman/listinfo/spindle-user
Blog: http://jroller.com/page/glongman
Feature Updates: http://spindle.sf.net/updates
---------------------------------------------------------------------
To unsubscribe, e-mail: tapestry-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: tapestry-user-help@jakarta.apache.org