aboutsummaryrefslogtreecommitdiff
path: root/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java
diff options
context:
space:
mode:
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.java10
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;
}
}