问题是:我有一个 page1.jsp,它被提交并转发到 page2.jsp。问题是转发的输出应该只是 page2.jsp 中的内容,而不是向我显示 page1.jsp 中的内容并立即显示 page2.jsp 中的内容
我正在使用requestDispatcher.forward(String)
,但我不知道为什么会这样
PS:我使用的是 JE 1.4
问题是:我有一个 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 不应在操作之前将任何内容写入响应。
推荐阅读: