Servlet3.0 jsp跳转到Servlet 出现404错误的路径设置方法


最近又遇到了这种问题,百度了好久,发现有人说要在action的路径里面写Servlet文件的绝对路径,比如说,单独打开servlet的地址为http://localhost:8080/TomcatTest/LoginConfServlet,那么就在action里面写http://localhost:8080/TomcatTest/LoginConfServlet。

我尝试着将http://localhost:8080移除,只保留/TomcatTest/LoginConfServlet,还是可以成功的。

总结:jsp跳转到servlet的时候,路径设置为/项目名/Servlet名。Servlet中dispatcher跳转到jsp页面时,也要写上/文件夹名/jsp文件名

图示:

Servlet3.0 jsp跳转到Servlet 出现404错误的路径设置方法

Servlet3.0 jsp跳转到Servlet 出现404错误的路径设置方法

Servlet3.0 jsp跳转到Servlet 出现404错误的路径设置方法


之前遇到了一个问题,在博问中也有记载,最后自己摸索着突然就搞清楚了。

问题就是:新建的动态web项目,发布到tomcat之后,jsp可以单独访问,servlet可以单独访问,但是通过form表单跳转到servlet的类则出现404错误。

反复研究了很久也没发现解决方案,可能这是个最基础的设置吧,根本没有人解答。

通过学习,我发现最重要的一点就是servlet编译好之后生成的类,存放位置十分关键。

按照默认设置的话,类是存放在build/classes文件夹中的,

Servlet3.0 jsp跳转到Servlet 出现404错误的路径设置方法

但是由于我们建立的jsp文件是存放在web-content文件夹中的,

Servlet3.0 jsp跳转到Servlet 出现404错误的路径设置方法

所以jsp文件没法找到servlet生成的class文件。

解决方案就是在build path里面重新设置class的输出文件夹,放到web-inf文件夹下面的classes中,如果没有这个classes文件夹,则要自己新建一个。

Servlet3.0 jsp跳转到Servlet 出现404错误的路径设置方法

其他关于tomcat设置就不在这里阐述了。

上一篇:20145230《java学习笔记》第九周学习总结


下一篇:archlinux 安装mysql-workbench