Threadlocal and similar in Tomcat is problematic. I had to drop
Threadlocal optimization from the OWASP Java Encoder (which sped it up
dramatically) because of Tomcat.

I am not sure if this is relevant, but though I'd drop this note anyhow.

Aloha, Jim


On 2/21/17 3:04 AM, sreenivas Harshith (JIRA) wrote:
>     [ 
> https://issues.apache.org/jira/browse/SHIRO-613?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15875930#comment-15875930
>  ] 
>
> sreenivas Harshith edited comment on SHIRO-613 at 2/21/17 1:04 PM:
> -------------------------------------------------------------------
>
> [~bdemers]
>
>
> Found the Issue. The issue was with this SecurityUtils.getSubject() method I 
> used to acquire the current executing user. This method uses ThreadContext 
> and I guess the subject is getting shared across threads as I am Using TomEE 
> With Http-Nio. After I login some 5 times, the next call to login again 
> SecurityUtils.getSubject().IsAuthenticated() returns true even before I call 
> this  login(token); and when i check the principals its the same User. I 
> changed it to 
> Subject currentUser = new Subject.Builder().buildSubject();
> After this change I am getting unique Session Id for each login Attempt and 
> even if some sessions are expired its not complaining.
>
>
>
> was (Author: sreenivash09):
> [~bdemers]
>
>
>
>
>> StoppedSessionException: Session with id has been explicitly stopped.  No 
>> further interaction under this session is allowed.
>> ----------------------------------------------------------------------------------------------------------------------------
>>
>>                 Key: SHIRO-613
>>                 URL: https://issues.apache.org/jira/browse/SHIRO-613
>>             Project: Shiro
>>          Issue Type: Bug
>>          Components: Authentication (log-in), Session Management
>>    Affects Versions: 1.3.2
>>            Reporter: sreenivas Harshith
>>              Labels: Sessiontimeout, StoppedSessionException, login, session
>>
>> I am using default shiro native session manager and Session DAO backed by Db 
>> store for storing sessions. I have set the session timeout to 10 min and I 
>> have the same user login multiple times, say 8 times. Once the session is 
>> expired I tried to login with same user credentials from a different client 
>> and shiro is calling this delete(Session sn) method implemented in my DAO to 
>> delete those old sessions that are expired. Once the deletion is completed 
>> it throws an exception with the deleted Session id saying 
>> org.apache.shiro.session.StoppedSessionException: Session with id 
>> [a9dd97a1-90d4-435c-b363-f74052dfa0dc] has been explicitly stopped.  No 
>> further interaction under this session is allowed, and  it fails to login 
>> the user.
>
>
> --
> This message was sent by Atlassian JIRA
> (v6.3.15#6346)

Reply via email to