[Java Web] JSP / Servlet 能【FORWARD】到静态页面吗?

前天,一组程序 (TFW's Web Base / MVC New Generation (Experimental) / 01 Name Guess) 在工作位的计算机上爆出“getOutputStream() has already called”异常:

当即 Debug 追踪,初步圈定范围,将出错的部分提取、最简化至一个 JSP 中,以便随时重现问题及试验各种解决办法:

试验结果:
1. forward 到 JSP ,一切正常:

2. sendRedict 到静态页面,一切正常:

3. forward 到静态页面,出此异常:

然而同样的程序也跑在个人网站上和自己的计算机上,立刻前往个人网站访问,无此异常;下班后在自己的计算机上试验,也无此异常:

Debug 验明正身,的确是 forward 到静态页面:


之后想到可能是环境差异所致:
1. 工作位计算机:Win7 x86 + Oracle JDK 1.8.X + Tomcat 7.0.59 ,forward 到静态页面异常;
2. 私人计算机:Linux x86-64 + Open JDK 1.8.X + Tomcat 7.0.59 ,forward 到静态页面正常;
3. 个人网站虚拟主机:Linux x86-64 + Oracle JDK 1.7.X + Tomcat 7.0.X ,forward 到静态页面正常。

但问题依然存在:
1. JSP / Servlet 到底能不能 forward 到静态页面?
2. JSP / Servlet 如何正确地 forward 到静态页面?

1个回答

从Servlet中是可以forward到HTML页面的
request.getRequestDispatcher("/WEB-INF/hiden.html").forward(request, response);

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问