【问题标题】:Logging out from dashboard results in error 404: requested resource not available从仪表板注销会导致错误 404:请求的资源不可用
【发布时间】:2017-04-27 08:00:18
【问题描述】:

我需要从 dahboard.jsp 注销并转到 index.jsp,但是当我单击注销按钮时,它会显示这样的错误消息,

HTTP 状态 404 - /Project/logout
输入状态报告
消息/项目/注销
描述 请求的资源 (/Project/logout) 不可用。
Apache Tomcat/6.0.20

dashboard.jsp 和 servlet 登录和注销发布在下面,可能是什么错误。

dashboard.jsp

<div class="ends">
    <form action="logout" method="post" >
        <input type="submit" value="logout">
    </form>
</div>

servlet 页面登录 login.java

package com.signin;

import java.io.IOException;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import com.db.DBCon;
/**
 * Servlet implementation class login
 */
public class login extends HttpServlet { 
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

        response.setContentType("text/html");
        PrintWriter out = response.getWriter();

        String uid=request.getParameter("uid");
        String pwd=request.getParameter("pwd");


        try {
            DBCon dbc = new DBCon();
            if(dbc.validateLogin(uid, pwd))
            {
                HttpSession session=request.getSession();
                session.setAttribute("userid",uid);

                response.sendRedirect("dashboard.jsp");
            }
            else
                out.println("<center><h3>Sign in Failed!</h3><br><a href='index.jsp'>Go to Sign up page</a></center>");
            dbc.closeCon();
        }
        catch(Exception e){ e.printStackTrace(); }
    }
}

logout.java

package com.signin;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;   
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

/**
 * Servlet implementation class logout
 */
public class logout extends HttpServlet {
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub

        HttpSession session=request.getSession();
        session.removeAttribute("userid");
        session.invalidate();
        response.sendRedirect("index.jsp"); 
    }

}

【问题讨论】:

    标签: java jsp tomcat servlets web


    【解决方案1】:

    检查您的web.xml 文件是否正确映射了您的注销类。问题可能在那里。否则分享完整的错误描述和网络。

    【讨论】:

    • 谢谢哥们,web.xml 中缺少注销类
    猜你喜欢
    • 2021-11-25
    • 1970-01-01
    • 1970-01-01
    • 2018-10-24
    • 2014-04-27
    • 2014-01-31
    • 2012-09-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多