【发布时间】:2009-12-14 07:05:01
【问题描述】:
基本上,我们想创建一个标签库,可以将请求执行转发到另一个页面,类似于<jsp:forward />。我们如何防止 JSP 页面的其余部分从 taglib 中执行?
【问题讨论】:
-
解释更多。现在还不清楚。
标签: jsp jakarta-ee jsp-tags taglib
基本上,我们想创建一个标签库,可以将请求执行转发到另一个页面,类似于<jsp:forward />。我们如何防止 JSP 页面的其余部分从 taglib 中执行?
【问题讨论】:
标签: jsp jakarta-ee jsp-tags taglib
对我来说,以下几行效果很好:
String url = "http://google.com";
response.reset();
response.setStatus(HttpServletResponse.SC_TEMPORARY_REDIRECT);
response.setHeader("Location", url);
response.getWriter().close();
response.getWriter().flush();
【讨论】:
如果您不想在将控制权交给另一个页面后继续处理原始页面,最好使用重定向而不是转发。
response.sendRedirect("foo.jsp");
这将重定向到新页面并停止处理旧页面。
但是 - 仅当您尚未向响应正文写入任何内容(即未将任何数据发送回客户端)时,重定向才可用。
【讨论】: