注销后如何在登录页面上重定向

时间:2014-03-24 08:10:57

标签: java jsp

我想点击退出标签然后在登出后重定向登录页面。这不是登录页面。

回到Home.jsp

<ul><li><a href="http://pushkalit.in/logout.jsp"> Logout</a></li></ul>

logout.jsp

<% try {

    if(session.getAttribute("Username") != null) {
        response.setHeader("Cache-Control","no-cache");
        response.setHeader("Cache-Control","no-store");
        response.setHeader("Pragma","no-cache");
        response.setDateHeader ("Expires", 0);
        session.invalidate();
        response.sendRedirect("http://pushkalit.in/hrlogin.jsp");
    }
    else {}
}
catch(Exception ex) {
    out.print(ex);
}
%>

2 个答案:

答案 0 :(得分:1)

我认为如果你只是将注销登录放在servlet而不是jsp中会更容易。别忘了做

session.invalidate()

编辑(进一步细节):类似这样的事情:

package com.my.package;

public class LogoutServlet extends HttpServlet {
  protected void doGet(HttpServletRequest request,
    HttpServletResponse response) throws ServletException, IOException {

    response.setHeader("Cache-Control", "no-cache, no-store");
    response.setHeader("Pragma", "no-cache");
    request.getSession().invalidate();
    response.sendRedirect(request.getContextPath() + "/login.jsp");
  }
}

在您的servlet.xml中(您也可以使用注释)将其配置为:

<servlet>
    <servlet-name>logoutServlet</servlet-name>
    <servlet-class>com.my.package.LogoutServlet</servlet-class>
</servlet>
<servlet-mapping>
    <servlet-name>logoutServlet</servlet-name>
    <url-pattern>/logout</url-pattern>
</servlet-mapping>

最后你的链接转到:

<a href="http://pushkalit.in/yourapplication/logout">Logout</a>

答案 1 :(得分:0)

锚标记中的URL映射似乎是错误的。

它与logout.jsp相关联,但您在Hrlogout.jsp中有重定向代码。

更改

<a href="http://pushkalit.in/logout.jsp"> Logout</a>

<a href="http://pushkalit.in/Hrlogout.jsp"> Logout</a>