Author: michiel Date: 2010-05-07 18:08:31 +0200 (Fri, 07 May 2010) New Revision: 42113
Modified: didactor/trunk/components/core/src/main/java/nl/didactor/filter/ProviderFilter.java didactor/trunk/components/core/src/main/java/nl/didactor/security/Authentication.java Log: dropping education from session was not such a good idea, it was sometimes the only way to keep track of it. Modified: didactor/trunk/components/core/src/main/java/nl/didactor/filter/ProviderFilter.java =================================================================== --- didactor/trunk/components/core/src/main/java/nl/didactor/filter/ProviderFilter.java 2010-05-07 16:08:06 UTC (rev 42112) +++ didactor/trunk/components/core/src/main/java/nl/didactor/filter/ProviderFilter.java 2010-05-07 16:08:31 UTC (rev 42113) @@ -42,6 +42,7 @@ public static String USER_KEY = "nl.didactor.user_attributes"; + public static String EDUCATION_KEY = "nl.didactor.education"; private static Map<String, Map<String, Object>> providerCache = new HashMap<String, Map<String, Object>>(); @@ -314,6 +315,14 @@ if (parameterEducation != null && parameterEducation.length() == 0) { parameterEducation = null; } + if (session != null) { + if (parameterEducation == null) { + parameterEducation = (String) session.getAttribute(EDUCATION_KEY); + log.debug("education found from session " + parameterEducation); + } else { + session.setAttribute(EDUCATION_KEY, parameterEducation); + } + } String parameterProvider = req.getParameter("provider"); Modified: didactor/trunk/components/core/src/main/java/nl/didactor/security/Authentication.java =================================================================== --- didactor/trunk/components/core/src/main/java/nl/didactor/security/Authentication.java 2010-05-07 16:08:06 UTC (rev 42112) +++ didactor/trunk/components/core/src/main/java/nl/didactor/security/Authentication.java 2010-05-07 16:08:31 UTC (rev 42113) @@ -114,6 +114,7 @@ HttpSession session = request == null ? null : request.getSession(false); if (session != null) { session.removeAttribute(nl.didactor.filter.ProviderFilter.USER_KEY); + session.removeAttribute(nl.didactor.filter.ProviderFilter.EDUCATION_KEY); String loginComponent = (String)session.getAttribute("didactor-logincomponent"); if (loginComponent != null) { for (AuthenticationComponent ac : securityComponents) { @@ -158,6 +159,7 @@ if (session != null) { log.info("Removing keys from session"); session.removeAttribute(nl.didactor.filter.ProviderFilter.USER_KEY); + session.removeAttribute(nl.didactor.filter.ProviderFilter.EDUCATION_KEY); } } @@ -275,6 +277,7 @@ } // session.removeAttribute(nl.didactor.filter.ProviderFilter.USER_KEY); + session.removeAttribute(nl.didactor.filter.ProviderFilter.EDUCATION_KEY); map.putAll(request.getParameterMap()); map.putAll(loginInfo); _______________________________________________ Cvs mailing list Cvs@lists.mmbase.org http://lists.mmbase.org/mailman/listinfo/cvs