You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Tomcat双Servlet通信报404资源不可用问题排查

问题原因

你的问题同时存在部署目录配置错误和Java代码错误两类问题,具体错误点和修复方案如下:

1. 致命部署目录拼写错误

Tomcat标准Web应用配置目录必须命名为WEB-INF,你当前目录写的是WEB_INF(下划线代替了横杠),Tomcat无法识别该目录,导致你写的web.xml配置完全不生效,所有Servlet映射都没有被注册。
修复方案:将WEB_INF文件夹重命名为WEB-INF。

2. Servlet转发路径配置错误

你在web.xml中给servlet2配置的访问路径是/form-resp,但servlet1的转发代码里写的是:

RequestDispatcher rd = req.getRequestDispatcher("servlet2");

getRequestDispatcher的参数需要填Servlet的映射路径,不是Servlet的类名/注册名,相对路径还会基于当前请求路径拼接,最终导致请求指向了不存在的路径,就是你看到的报错内容。
修复方案:将上述代码修改为:

RequestDispatcher rd = req.getRequestDispatcher("/form-resp");

3. 额外可优化错误

你servlet2里的include代码也存在同样的路径错误,如果需要保留该逻辑,需要修改为:

RequestDispatcher rd = req.getRequestDispatcher("/form");

如果不需要引入servlet1的输出,可以直接删除这段include代码,避免表单重复渲染。


内容的提问来源于stack exchange,提问作者pierbin24

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 20:09:04