[
https://issues.apache.org/jira/browse/WICKET-6317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15896546#comment-15896546
]
ASF subversion and git services commented on WICKET-6317:
---------------------------------------------------------
Commit 21ae5a9fb26eba66e593bf8566004c9296548001 in wicket's branch
refs/heads/master from [~mgrigorov]
[ https://git-wip-us.apache.org/repos/asf?p=wicket.git;h=21ae5a9 ]
WICKET-6317 AuthenticatedWebSession#signOut() calls twice after session
invalidation
Do not call #invalidate() inside #invalidateNow() if the session is already
invalidated.
> AuthenticatedWebSession#signOut() calls twice after session invalidation
> ------------------------------------------------------------------------
>
> Key: WICKET-6317
> URL: https://issues.apache.org/jira/browse/WICKET-6317
> Project: Wicket
> Issue Type: Bug
> Components: wicket, wicket-auth-roles
> Affects Versions: 7.6.0
> Reporter: Alexey Prudnikov
> Assignee: Martin Grigorov
> Fix For: 7.7.0, 8.0.0-M5
>
>
> When the user wants to log out, I call AuthenticatedWebSession#invalidate(),
> which, in turn, calls AuthenticatedWebSession#signOut() and sets
> Session#sessionInvalidated to true.
> After that, at the end of request processing, RequestCycle#onDetach() is
> called, which in turn calls Session#detach(). The last method checks
> Session#sessionInvalidated state, and because it is true, invalidates session
> again with Session#invalidateNow().
> So, if I place some business logic code in #signOut() (as in example class
> BasicAuthenticationSession from [official
> guide|https://ci.apache.org/projects/wicket/guide/7.x/single.html#_using_roles_with_metadata]),
> this code also calls twice, which may be inappropriate in some cases.
> I know about WICKET-6228 ticket - now #invalidate() doesn't call #signOut(),
> and this can be solution for issue, but that changes not ported to Wicket 7
> branch.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)