diff options
Diffstat (limited to 'id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java')
-rw-r--r-- | id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java index 27cd2b5a5..585655e7c 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java @@ -179,9 +179,9 @@ public class DispatcherServlet extends AuthServlet { } HttpSession httpSession = req.getSession(); - + IRequest protocolRequest = null; try { - IRequest protocolRequest = RequestStorage + protocolRequest = RequestStorage .getPendingRequest(httpSession); if (protocolRequest != null) { @@ -250,12 +250,14 @@ public class DispatcherServlet extends AuthServlet { } moduleAction.processRequest(protocolRequest, req, resp); - + RequestStorage.removePendingRequest(httpSession); + AuthenticationManager.logout(req, resp); + } catch (Throwable e) { // Try handle module specific, if not possible rethrow - if (!info.generateErrorMessage(e, req, resp)) { + if (!info.generateErrorMessage(e, req, resp, protocolRequest)) { throw e; } } |