问题是:我有一个page1.jsp,它被提交并转发到page2.jsp。问题是转发的输出应该只是page2.jsp中的内容,而不是向我显示来自page1.jsp的内容,并立即显示来自page2.jsp的内容
我正在使用requestDispatcher.forward(String)
,但我不知道为什么会发生这种情况
PS:我正在使用JE 1.4
看来方法签名不正确。根据javaee 1.4 API:
public void forward(ServletRequest request,ServletResponse response)
throws ServletException,
java.io.IOException
因此,您的代码应该是:
RequestDispatcher dispatcher = request.getRequestDispatcher("page2.jsp);
dispatcher.forward( request, response );
更好的是,您可以使用<jsp:forward>
标准操作。
包含该操作的JSP停止处理,清除其缓冲区,并将请求转发到目标资源。请注意,调用JSP不应在操作之前向响应写入任何内容。
建议阅读:
如何避免JSP文件中的Java代码?