jsp - Servlet 给我 HTTP 状态 404 错误

标签 jsp servlets http-status-code-404

<分区>

我要修改密码 更改密码.jsp:

<form name="ChangePasswordForm" method="post" action="ChangePasswordServlet">

<table id="t01" >
    <tbody class="ui-widget-content">
        <tr>
            <td>Employee ID</td>
            <td><input type="text" name="empid" value="<%=session.getAttribute("name")%>" readonly="readonly" required="required"/></td>
        </tr>
        <tr>
        <td>Old Password</td>
        <td><input name="OldPassword" type="password" id="OLDpwd" required="required"></td>
        </tr>
        <tr>
        <td>NewPassword</td>
        <td><input name="newpassword" type="password" id="newpassword" required="required">
        </td>
        </tr>
        <tr>
        <td>Confirm Password</td>
        <td><input name="conpassword" type="password" id="conpassword" required="required">
        </td>
        </tr>
        <tr>
    </tbody>
</table><br>

        <input type="submit" name="Submit" class="myButton"  value="Save">
        <input type="reset" class="myButton" value="Reset" />
        <a href="logout.jsp" class="myButton">Logout</a>

</form>

</body>

密码道.java:

public class PasswordDao {

public static int Update(PasswordBean pb,String sql) throws Exception {

    int i=0;  
    PreparedStatement ps=null;
    Connection conn=ConnectionProvider.getConn();  
    try{ 
        ps = conn.prepareStatement(sql);

        ps.setString(1,pb.getNewpassword());
        ps.setString(2,pb.getEmpid());
        ps.setString(3,pb.getOldPassword());
        i=ps.executeUpdate();  
    }
    catch(Exception e){
        System.out.println(e);
    }
    finally { 
        if (conn != null) {  
            try {  
                conn.close();  
            } catch (SQLException e) {  
                e.printStackTrace();  
            }  
        }
        if (ps != null) {  
            try {  
                ps.close();  
            } catch (SQLException e) {  
                e.printStackTrace();  
            }  
        }  

    }  
    return i;  

}
}

ChangePasswordServlet.java

public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
  response.setContentType("text/html;charset=UTF-8");
  PrintWriter out = response.getWriter();

  PasswordBean pb = new PasswordBean();
  String Emp_id=request.getParameter("empid");    
  pb.setEmpid(Emp_id);
  String Oldpwd=request.getParameter("OldPassword");   pb.setOldPassword(Oldpwd);
  String Newpwd=request.getParameter("newpassword"); pb.setNewpassword(Newpwd);

   HttpSession session = request.getSession(false); 

   try{if (Emp_id!=null){
        session.setAttribute("Emp_id",Emp_id);}
    }catch(Exception e){e.printStackTrace();}
    try{if (Oldpwd!=null){
        session.setAttribute("Oldpwd",Oldpwd);}
    }catch(Exception e){e.printStackTrace();}
    try{if (Newpwd!=null){
        session.setAttribute("Newpwd",Newpwd);}
    }catch(Exception e){e.printStackTrace();}

   PasswordDao dao = new PasswordDao();
    String sql= "Update employee set Pwd= ? WHERE Emp_id=? and Pwd=?";

     try {

       int status = PasswordDao.Update(pb, sql);

    if(status!=0){
        out.print("<p style=\"color:Green\">Password Changed Successfully!!</p>");  
        RequestDispatcher rd=request.getRequestDispatcher("/changePassword.jsp");    
        rd.include(request,response);
    }
   else{    
        out.print("<p style=\"color:red\">**Password doesnot Change.. Try Again! **</p>");    
        RequestDispatcher rd=request.getRequestDispatcher("/changePassword.jsp");    
        rd.include(request,response);
    }

     }
   catch(Exception e){
       e.printStackTrace();
   }
} 

我尝试使用上面的代码,但它给了我 HTTP 状态 404 错误。它不会在 netbeans 中给出任何错误来纠正。请告诉我如何解决。

最佳答案

Web 服务器生成 404 错误,表示未找到资源。因此,您发布的代码可能没有任何问题。这里的问题是服务器无法将请求映射到适当的 servlet。

解决方案:确保您在 web.xml 中有正确的映射

示例代码:

<servlet>
  <servlet-name>ChangePasswordServlet</servlet-name>
  <servlet-path>foo.ChangePasswordServlet</servlet-path>
</servlet>
<servlet-mapping>
  <servlet-name>ChangePasswordServlet</servlet-name>
  <url-pattern>/ChangePasswordServlet</url-pattern>
</servlet-mapping>

关于jsp - Servlet 给我 HTTP 状态 404 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33626753/

相关文章:

css - 如何调整div的位置

python - Django,当我返回 status_code 404 或 500 时自定义 404/500

css - Codeigniter CSS、JS 和图像未加载,可能假定为目录

java.lang.ClassNotFoundException : org. json.JSONException

java - 将值放入输入字段中,即来自 servlet 的 html 表单中的文本框中

服务页面之前的 Java Servlet 执行方法

iis - 无法从 IIS 访问 Letsencrypt ACME Challenge 文件

javascript - jquery 自动补全多余空格

jsp - 使用 Apache Tiles 包含部分磁贴?

java - 如何从 HTML 下拉列表中选定的选项更新/插入 Oracle 数据库?