Author: kevinshen
Date: 2010-01-26 09:18:28 +0100 (Tue, 26 Jan 2010)
New Revision: 40723
Modified:
CMSContainer/trunk/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/servlet/CommunityLogoutServlet.java
Log:
CMSC-1539 CAS single sign-on implementation refactor code
Modified:
CMSContainer/trunk/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/servlet/CommunityLogoutServlet.java
===================================================================
---
CMSContainer/trunk/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/servlet/CommunityLogoutServlet.java
2010-01-25 15:45:52 UTC (rev 40722)
+++
CMSContainer/trunk/CMSContainer_Modules/community/src/java/com/finalist/cmsc/community/servlet/CommunityLogoutServlet.java
2010-01-26 08:18:28 UTC (rev 40723)
@@ -7,9 +7,12 @@
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+import javax.servlet.http.HttpSession;
import org.apache.log4j.Logger;
+import com.finalist.cmsc.services.community.Community;
+
@SuppressWarnings("serial")
public class CommunityLogoutServlet extends HttpServlet {
@@ -28,13 +31,19 @@
if (request.getSession().getAttribute(CAS_LOGIN_LOCALE) != null) {
locale = (String)request.getSession().getAttribute(CAS_LOGIN_LOCALE);
}
- request.getSession().invalidate();
+ //
request.getSession(false).removeAttribute(HttpSessionContextIntegrationFilter.ACEGI_SECURITY_CONTEXT_KEY);
+ HttpSession session = request.getSession(false);
+ if (session != null) {
+ session.invalidate();
+ }
+
+ Community.logout();
+
String defaultLogoutUrl = CAS_SERVER_LOGOUT_URL;
if (locale != null) {
defaultLogoutUrl += "_"+locale;
}
+ log.debug("Community logout url : "+defaultLogoutUrl);
response.sendRedirect(getServletContext().getInitParameter(defaultLogoutUrl));
-
- log.error("There is no right casServerLogoutUrl in the context.xml");
}
}
_______________________________________________
Cvs mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/cvs