项目场景:
在IDEA里启动tomcat通过jsp页面访问servlet,servlet映射的url通过注解设置为/login
问题描述:
jsp页面里提交表单时,浏览器里出现如下的404提示信息,未找到
原因分析:
在IDEA配置tomcat的地方可以看到,Application context里设置了一个默认的路径,因此登录页面地址实际上是localhost:8080/ExpressSystemWeb_war_exploded/login.jsp
故登录页面提交表单的地址是localhost:8080/ExpressSystemWeb_war_exploded/login
,而servlet设置的映射是/login
,即servlet处理的url地址是localhost:8080/login
,两者不一致,404
解决方案:
很简单,只需要找到这个Application context设置的地方,将Application context里的值设置为/即可,如果要保留项目名的url,每个servlet处理的url都要加上前缀,得不偿失