时间:2021-05-20
这个问题困扰我整整一天一夜,先是代码检查路径设置找不出问题,后面换tomcat版不行,抱着侥幸心理换IDEA版本意料之中还是没解决问题。
都快想秃了最后终于完美解决了。
场景描述:
IDEA中新建web项目
tomcat正常
HTML通过XML配置文件提交表单正常
当HTML通过Servlet注解名提交表单时404
问题分析:
通常404是路径出现问题,此时第一反应是form中action值和servlet注解值出错,检查后
属性值匹配。检查游览器访问路径最终找到问题出在启动虚拟路径上。
如图访问login.html时是通过 /test 这个虚拟路径访问的。但是提交表单后游览器中虚拟路径
消失而是直接通过servlet注解名提交表单数据,见图:
明白这里解决问题就简单了,想到的有两种解决方法:
方法一:给servlet注解的映射加上虚拟路径(没啥意义)
方法二:配置Tomcat的Deployment把Application context后面的虚拟路径名删除(推荐)
方法二细节:
1.Run->Edit Configuration
2.点击Deployment
3.找到Application context删除虚拟路径名
重启服务器运行项目,至此问题解决
到此这篇关于IDEA中HTML通过servlet3.0注解名提交表单到servlet类找不到页面的问题的文章就介绍到这了,更多相关idea servlet3.0注解名提交表单找不到页面内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
在servlet3.0开始web项目可以完全不需要web.xml配置文件了,所以本文的配置只在支持servlet3.0及以上的web容器中有效使用的是sprin
编写好Servlet之后,接下来要告诉Web容器有关于这个Servlet的一些信息。在Servlet3.0中,可以使用标注(Annotation)来告知容器哪些
在Servlet3.0之前都是使用web.xml文件进行配置,需要增加Servlet、Filter或者Listener都需要在web.xml增加相应的配置。Se
在一般情况下,可以从JSP页面或另一个servlet调用操作servlet,作为表单提交或链接激活的结果。根据请求的类型,该servlet重新从操作库中检索相应
在JavaScript中想要调用Java的方法,我通过JavaScript访问servlet,再通过servlet调用Java某个类的方法。HTML代码全选图片