[ 
https://issues.apache.org/jira/browse/SHIRO-388?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Les Hazlewood resolved SHIRO-388.
---------------------------------

       Resolution: Fixed
    Fix Version/s: 1.3.0
                   1.2.2
    
> Stackoverflow org.apache.shiro.session.SessionListener.onStop()
> ---------------------------------------------------------------
>
>                 Key: SHIRO-388
>                 URL: https://issues.apache.org/jira/browse/SHIRO-388
>             Project: Shiro
>          Issue Type: Bug
>          Components: Session Management
>    Affects Versions: 1.2.1
>         Environment: Tomcat, Struts framework
>            Reporter: Arvind S
>             Fix For: 1.2.2, 1.3.0
>
>
> While trying to access the session variable in the Sessionlistener onStop() 
> method cyclic call happens and ends with stack overflow . just sent the part 
> of the stacktrace. few lines get repeated lot and ends with exception
> SEVERE: Servlet.service() for servlet jsp threw exception
> java.lang.StackOverflowError
>       at java.text.SimpleDateFormat.zeroPaddingNumber(Unknown Source)
>       at java.text.SimpleDateFormat.subFormat(Unknown Source)
>       at java.text.SimpleDateFormat.format(Unknown Source)
>       at java.text.SimpleDateFormat.format(Unknown Source)
>       at java.text.DateFormat.format(Unknown Source)
>       at 
> org.apache.log4j.helpers.PatternParser$DatePatternConverter.convert(PatternParser.java:443)
>       at 
> org.apache.log4j.helpers.PatternConverter.format(PatternConverter.java:65)
>       at org.apache.log4j.PatternLayout.format(PatternLayout.java:506)
>       at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:310)
>       at org.apache.log4j.WriterAppender.append(WriterAppender.java:162)
>       at org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251)
>       at 
> org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66)
>       at org.apache.log4j.Category.callAppenders(Category.java:206)
>       at org.apache.log4j.Category.forcedLog(Category.java:391)
>       at org.apache.log4j.Category.debug(Category.java:260)
>       at 
> com.stutzen.abc.common.LoggerManager.writeHelperInfo(LoggerManager.java:52)
>       at com.stutzen.abc.shiro.SessionListener.onStop(SessionListener.java:37)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.notifyStop(AbstractNativeSessionManager.java:158)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.onInvalidation(AbstractValidatingSessionManager.java:174)
>       at 
> org.apache.shiro.web.session.mgt.DefaultWebSessionManager.onInvalidation(DefaultWebSessionManager.java:221)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.validate(AbstractValidatingSessionManager.java:148)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.doGetSession(AbstractValidatingSessionManager.java:120)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupSession(AbstractNativeSessionManager.java:105)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupRequiredSession(AbstractNativeSessionManager.java:109)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.getAttribute(AbstractNativeSessionManager.java:206)
>       at 
> org.apache.shiro.session.mgt.DelegatingSession.getAttribute(DelegatingSession.java:141)
>       at 
> org.apache.shiro.session.ProxiedSession.getAttribute(ProxiedSession.java:121)
>       at com.stutzen.abc.utils.CUtils.getSessionAttribute(CUtils.java:279)
>       at 
> com.stutzen.abc.shiro.SessionListener.setRequestEmployeeStatus(SessionListener.java:47)
>       at com.stutzen.abc.shiro.SessionListener.onStop(SessionListener.java:38)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.notifyStop(AbstractNativeSessionManager.java:158)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.onInvalidation(AbstractValidatingSessionManager.java:174)
>       at 
> org.apache.shiro.web.session.mgt.DefaultWebSessionManager.onInvalidation(DefaultWebSessionManager.java:221)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.validate(AbstractValidatingSessionManager.java:148)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.doGetSession(AbstractValidatingSessionManager.java:120)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupSession(AbstractNativeSessionManager.java:105)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupRequiredSession(AbstractNativeSessionManager.java:109)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.getAttribute(AbstractNativeSessionManager.java:206)
>       at 
> org.apache.shiro.session.mgt.DelegatingSession.getAttribute(DelegatingSession.java:141)
>       at 
> org.apache.shiro.session.ProxiedSession.getAttribute(ProxiedSession.java:121)
>       at com.stutzen.abc.utils.CUtils.getSessionAttribute(CUtils.java:279)
>       at 
> com.stutzen.abc.shiro.SessionListener.setRequestEmployeeStatus(SessionListener.java:47)
>       at com.stutzen.abc.shiro.SessionListener.onStop(SessionListener.java:38)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.notifyStop(AbstractNativeSessionManager.java:158)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.onInvalidation(AbstractValidatingSessionManager.java:174)
>       at 
> org.apache.shiro.web.session.mgt.DefaultWebSessionManager.onInvalidation(DefaultWebSessionManager.java:221)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.validate(AbstractValidatingSessionManager.java:148)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.doGetSession(AbstractValidatingSessionManager.java:120)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupSession(AbstractNativeSessionManager.java:105)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupRequiredSession(AbstractNativeSessionManager.java:109)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.getAttribute(AbstractNativeSessionManager.java:206)
>       at 
> org.apache.shiro.session.mgt.DelegatingSession.getAttribute(DelegatingSession.java:141)
>       at 
> org.apache.shiro.session.ProxiedSession.getAttribute(ProxiedSession.java:121)
>       at com.stutzen.abc.utils.CUtils.getSessionAttribute(CUtils.java:279)
>       at 
> com.stutzen.abc.shiro.SessionListener.setRequestEmployeeStatus(SessionListener.java:47)
>       at com.stutzen.abc.shiro.SessionListener.onStop(SessionListener.java:38)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.notifyStop(AbstractNativeSessionManager.java:158)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.onInvalidation(AbstractValidatingSessionManager.java:174)
>       at 
> org.apache.shiro.web.session.mgt.DefaultWebSessionManager.onInvalidation(DefaultWebSessionManager.java:221)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.validate(AbstractValidatingSessionManager.java:148)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.doGetSession(AbstractValidatingSessionManager.java:120)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupSession(AbstractNativeSessionManager.java:105)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.lookupRequiredSession(AbstractNativeSessionManager.java:109)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.getAttribute(AbstractNativeSessionManager.java:206)
>       at 
> org.apache.shiro.session.mgt.DelegatingSession.getAttribute(DelegatingSession.java:141)
>       at 
> org.apache.shiro.session.ProxiedSession.getAttribute(ProxiedSession.java:121)
>       at com.stutzen.abc.utils.CUtils.getSessionAttribute(CUtils.java:279)
>       at 
> com.stutzen.abc.shiro.SessionListener.setRequestEmployeeStatus(SessionListener.java:47)
>       at com.stutzen.abc.shiro.SessionListener.onStop(SessionListener.java:38)
>       at 
> org.apache.shiro.session.mgt.AbstractNativeSessionManager.notifyStop(AbstractNativeSessionManager.java:158)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.onInvalidation(AbstractValidatingSessionManager.java:174)
>       at 
> org.apache.shiro.web.session.mgt.DefaultWebSessionManager.onInvalidation(DefaultWebSessionManager.java:221)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.validate(AbstractValidatingSessionManager.java:148)
>       at 
> org.apache.shiro.session.mgt.AbstractValidatingSessionManager.doGetSession(AbstractValidatingSessionManager.java:120)

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to