【发布时间】:2015-01-20 02:56:53
【问题描述】:
我在 jsp 中遇到重定向问题,页面仍然存在并且没有抛出任何错误。
当我直接在我的 login.jsp 中编写脚本时,我可以进行重定向
<%
String redirectURL = "/client/index.jsp";
response.sendRedirect(redirectURL);
%>
<t:login title="Client Login">
..........
</t:login>
但是当我将文件分成三个并包含它时,我无法进行重定向。下面是我的实现。
login.jsp
<%@include file="/include/checkhandler.jsp"%>
checkhandler.jsp - 这是一个脚本,它将检查处理程序文件夹中的文件并在它存在时包含它。
......
request.getRequestDispatcher(handler).include(request, response);
......
login_handler.jsp 这是调度程序将包含的文件
String redirectURL = "/client/index.jsp";
response.sendRedirect(redirectURL);
out.println("hello world");
执行此脚本后,hello world 显示,但仍停留在同一页面,没有任何错误。
【问题讨论】:
-
重定向是有条件的吗?发布更多代码。
-
是的,我已经调试并确保代码正在执行,login_handler.jsp 能够打印,问题是通过 sendRedirect 运行后页面没有重定向
-
我实际上的意思是如果您的 JSP 中有任何 if-else 块以及不会发生重定向的任何条件。 login_handler.jsp 是否只包含这两行?
-
感谢您的宝贵时间,我已经修改了我的问题以澄清正在执行 sendRedirect
标签: java jsp redirect requestdispatcher