404 错误小结;
参考:http://blog.csdn.net/yangkai_hudong/article/details/8133220
404 原因:
1.请求地址对应不正确.
2.极个别情况是缓存未清理,jar包冲突导致。
3.servlet写的有问题,里面的转发地址写错,注意提示信息,注意提示信息,注意提示信息!
4.配置文件web.xml里的配置错误。
5.tomcat的虚拟目录错误,一般是由于你在myeclipse中修改了项目名,而没有重新布置。导致在tomcat服务器中还是原来的项目名。。。
错误3示例1:
//正确:response.sendRedirect("http://localhost:8080/JBEshop/login.jsp"); //正确:request.getRequestDispatcher("/login.jsp").forward(request,response);
//正确:request.getRequestDispatcher("login.jsp").forward(request,response); //错误:request.getRequestDispatcher("http://localhost:8080/JBEshop/login.jsp").forward(request, response); //请求地址:/JBEshop/http://localhost:8080/JBEshop/login.jsp //错误:request.getRequestDispatcher("/JBEshop/login.jsp").forward(request, response); //请求地址:/JBEshop//JBEshop/login.jsp
总结:1.出现错误要注意提示信息。
2.转发时会自动基于第一次请求,采用相对寻址,注意URL的填写。
LoginServlet 的 URL:http://localhost:8080/JBEshop/LoginServlet
第一次是向LoginServlet请求,所以接下来的转发是基于LoginServlet的相对寻址。
错误4示例:
<servlet> <description>This is the description of my J2EE component</description> <display-name>This is the display name of my J2EE component</display-name> <servlet-name>loginservlet</servlet-name> <servlet-class>servlet.LoginServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>loginservlet</servlet-name> <url-pattern>/LoginServlet</url-pattern> </servlet-mapping>
写servlet的配置文件时,“/LoginServlet”写成“LoginServlet”,没有加斜杠,导致整个项目都没法访问,提示404.
浙公网安备 33010602011771号