在开发过程中,我们经常会遇到 Tomcat 服务器访问 JSP 页面时出现 404 错误的情况。以下是一个具体的实例,我们将一步步分析并解决这个 404 错误。
实例背景
假设我们有一个简单的 JSP 页面,名为 `test.jsp`,存放于 `webapps/ROOT` 目录下。当尝试通过浏览器访问这个页面时,却出现了 404 错误。

错误排查步骤
1. 检查文件路径:
确认 `test.jsp` 文件是否真的位于 `webapps/ROOT` 目录下。
2. 检查 web.xml 配置:
查看项目根目录下的 `web.xml` 文件,确保其中正确配置了欢迎文件或映射。
例如,以下配置表示访问 `index.jsp` 页面时,会自动跳转到 `test.jsp` 页面。
```xml
```
3. 检查 Tomcat 配置:
确认 Tomcat 服务器配置是否正确,如端口号、虚拟主机等。
检查 `server.xml` 文件,确保 `Host` 节点下的 `appBase` 属性设置正确。
4. 检查浏览器缓存:
清除浏览器缓存,尝试重新访问 JSP 页面。
5. 重启 Tomcat 服务器:
有时问题可能是由 Tomcat 服务器的缓存引起的,重启服务器可以解决这个问题。
解决方案
根据上述排查步骤,我们发现问题出在 `web.xml` 配置中。将 `welcome-file-list` 的 `welcome-file` 属性从 `index.jsp` 修改为 `test.jsp`,并添加相应的 `servlet` 和 `servlet-mapping` 配置。
修改后的 `web.xml` 配置如下:
```xml
```
修改完成后,重新启动 Tomcat 服务器,再次访问 `test.jsp` 页面,问题应该已经解决。


