aboutsummaryrefslogtreecommitdiff
path: root/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java
diff options
context:
space:
mode:
authorThomas Lenz <tlenz@iaik.tugraz.at>2013-10-03 12:11:29 +0200
committerThomas Lenz <tlenz@iaik.tugraz.at>2013-10-03 12:11:29 +0200
commitb0f09b21746380c80b738a051f313caf0b0b684d (patch)
tree01b929993b73bdaf0c93b90a5971be97385599f5 /id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java
parent173b6db7d9ed8c1115ec634de68b7a9d8f70f812 (diff)
downloadmoa-id-spss-b0f09b21746380c80b738a051f313caf0b0b684d.tar.gz
moa-id-spss-b0f09b21746380c80b738a051f313caf0b0b684d.tar.bz2
moa-id-spss-b0f09b21746380c80b738a051f313caf0b0b684d.zip
Code CleanUP and change to consisted Version numbers
Diffstat (limited to 'id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java')
-rw-r--r--id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java41
1 files changed, 37 insertions, 4 deletions
diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java
index f07022394..3bf213290 100644
--- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java
+++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IndexAction.java
@@ -2,7 +2,10 @@ package at.gv.egovernment.moa.id.configuration.struts.action;
import java.util.ArrayList;
import java.util.Date;
+import java.util.Enumeration;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map.Entry;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@@ -75,7 +78,7 @@ public class IndexAction extends ActionSupport implements ServletRequestAware,
private static final Logger log = Logger.getLogger(IndexAction.class);
private HttpServletRequest request;
- private HttpServletResponse response;
+// private HttpServletResponse response;
private String password;
private String username;
@@ -177,7 +180,10 @@ public class IndexAction extends ActionSupport implements ServletRequestAware,
finally {
ConfigurationDBUtils.closeSession();
}
- request.getSession().setAttribute(Constants.SESSION_AUTH, authuser);
+
+ HttpSession session = generateNewJSession(request);
+ session.setAttribute(Constants.SESSION_AUTH, authuser);
+
return Constants.STRUTS_SUCCESS;
}
}
@@ -412,7 +418,9 @@ public class IndexAction extends ActionSupport implements ServletRequestAware,
finally {
ConfigurationDBUtils.closeSession();
}
- session.setAttribute(Constants.SESSION_AUTH, authUser);
+
+ HttpSession newsession = generateNewJSession(request);
+ newsession.setAttribute(Constants.SESSION_AUTH, authUser);
return Constants.STRUTS_SUCCESS;
}
@@ -700,8 +708,33 @@ public class IndexAction extends ActionSupport implements ServletRequestAware,
return Constants.STRUTS_SUCCESS;
}
+ private HttpSession generateNewJSession(HttpServletRequest request) {
+ HttpSession session = request.getSession(false);
+
+ if (session != null) {
+
+ HashMap<String, Object> attributes = new HashMap<String,Object>();
+
+ Enumeration<String> enames = session.getAttributeNames();
+ while (enames.hasMoreElements()) {
+ String name = enames.nextElement();
+ if (!name.equals("JSESSIONID"))
+ attributes.put(name, session.getAttribute( name));
+ }
+ session.invalidate();
+
+ session = request.getSession(true);
+ for (Entry<String,Object> et : attributes.entrySet())
+ session.setAttribute( et.getKey(), et.getValue());
+
+ } else
+ session = request.getSession(true);
+
+ return session;
+ }
+
public void setServletResponse(HttpServletResponse arg0) {
- this.response = arg0;
+// this.response = arg0;
}
public void setServletRequest(HttpServletRequest arg0) {
this.request = arg0;