我正在开发一些应该具有通用登录点的J2EE应用程序。我的应用程序托管在GlassFish v3应用程序服务器上。
基于web.xml的安全性使用FORM方法(带有“j_security_check”操作的HTML表单)和PostgreSQL 8.4数据源上的JDBC Realm。当GlassFish SSO被禁用时,它完全正常。
现在在GF的HTTP服务页面上启用了SSO,当我需要登录时它确实正常工作。每个我的应用程序都允许登录用户。但这是另一个问题。
我的注销 servlet现在只有在我点击两次“注销”时才能正常工作。 首次“注销”后点击我保持登录状态.Servlet代码如下。
public class LogoutServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
//request.logout(); // tried this too
request.getSession().invalidate(); // used to work properly
response.sendRedirect("./"); // to welcome page
}
}
我很乐意提供一些有用的提示。
感谢。