[
https://issues.jboss.org/browse/WFLY-3529?page=com.atlassian.jira.plugin....
]
Pëtr Andreev commented on WFLY-3529:
------------------------------------
Concerning: ??a small chance that you can get this exception, as the redirect is send
before session invalidation happens. This means the browser can request the next page and
get hold of the soon to be invalidated session before the invalidation happens, however
this is unlikely in practice.??
I`m migrating to Seam 2.3 on WildFly 8.2 and for the Seam Faces navigation it is always
the case on logout action: Seam just marks its own Session wrapper to be invalidated at
the request end, sends the redirect (which refers the Session perfectly valid yet) and at
the end of the Faces request does a real invalidation of the HttpSession. There is a
remedy if one hits this issue: overwrite the Seam`s Session component and carefully
invalidate JSESSIONID cookie just before the redirect is sent, see
[
UndertowSession|https://gist.github.com/petrandreev/8a9c87e2eec381e29c3b].
UT000010: Session not found
----------------------------
Key: WFLY-3529
URL:
https://issues.jboss.org/browse/WFLY-3529
Project: WildFly
Issue Type: Bug
Components: Web (Undertow)
Environment: Wildfly 8.1.0.Final ,
Reporter: Youssef BIKHCHICHE
Assignee: Stuart Douglas
Fix For: 9.0.0.CR1
Attachments: WFLY-3529.tar.gz, WFLY-3529.war
After migration our AS from Woldfly 8.0.0 to 8.1.0 we get this issue that we think has
been fixed in the previous release of wildfly.
ERREOR code :
2014-06-20 12:45:21,092 ERROR [io.undertow.request] (default task-11) Blocking request
failed HttpServerExchange{ GET /xenturion/faces/public/500.xhtml}:
java.lang.RuntimeException: java.lang.IllegalStateException: UT000010: Session not found
cX6YRwOmoXcB8FFUdNY2r7Te
at io.undertow.servlet.spec.RequestDispatcherImpl.error(RequestDispatcherImpl.java:408)
at io.undertow.servlet.spec.RequestDispatcherImpl.error(RequestDispatcherImpl.java:311)
at
io.undertow.servlet.spec.HttpServletResponseImpl.sendError(HttpServletResponseImpl.java:128)
at
io.undertow.servlet.spec.HttpServletResponseImpl.sendError(HttpServletResponseImpl.java:142)
at
io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:273)
at
io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:227)
at
io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:73)
at
io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:146)
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:177)
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:727)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
[rt.jar:1.7.0_40]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
[rt.jar:1.7.0_40]
at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_40]
Caused by: java.lang.IllegalStateException: UT000010: Session not found
cX6YRwOmoXcB8FFUdNY2r7Te
at
io.undertow.server.session.InMemorySessionManager$SessionImpl.getAttribute(InMemorySessionManager.java:319)
at io.undertow.servlet.spec.HttpSessionImpl.getAttribute(HttpSessionImpl.java:121)
at
org.springframework.security.web.context.HttpSessionSecurityContextRepository.readSecurityContextFromSession(HttpSessionSecurityContextRepository.java:144)
at
org.springframework.security.web.context.HttpSessionSecurityContextRepository.loadContext(HttpSessionSecurityContextRepository.java:86)
at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:82)
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:343)
at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:260)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:60)
at
io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:132)
at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:85)
at
io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:61)
at
io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:25)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:25)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:25)
at
io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:229)
at
io.undertow.servlet.handlers.ServletInitialHandler.dispatchToPath(ServletInitialHandler.java:172)
at io.undertow.servlet.spec.RequestDispatcherImpl.error(RequestDispatcherImpl.java:402)
======================================================
this issue happens after a http session invalidate action and it' not a regular
problems.
Best regards,
Youssef
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)