java - 如何从 JSP 页面调用 servlet 来执行自动重定向?

标签 java jsp servlets redirect

我正在尝试将 JSP 页面重定向到另一个页面 - 问题是我不一定知道要重定向到的 URL。所以我的想法是,当 JSP 加载时,它会调用一个 servlet 来计算新的 URL 并执行重定向。我不知道如何做到这一点,而且我认为我还没有遇到过问过这个问题的人。帮助?提前致谢。

最佳答案

您可以使用forward()(假设它是同一服务器):

RequestDispatcher dispatcher = getServletContext().getRequestDispatcher("/service-that-redirects");
dispatcher.forward(request, response);

如果 url-resolver 服务位于另一台服务器上,请使用 sendRedirect():

response.sendRedirect("http://otherserver.com/redirect-service?param1=a&param2=b&...");

如果您想详细了解这两个选项之间的区别:http://javarevisited.blogspot.com/2011/09/sendredirect-forward-jsp-servlet.html

关于java - 如何从 JSP 页面调用 servlet 来执行自动重定向?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24727586/

相关文章:

java - 为什么 Collection FrameWork 中一些方法的返回值如 : add(E), remove(Object), addAll,... 是 boolean?

java - 碧 Jade 报告 : filling a report throws an exception “TargetInvocationException”

java - servlet request.getParameterValues(fieldName) 返回 null 并抛出异常

java - 如何停用 aui :checkbox label? 的功能

java - 在另一个 JSP 中包含相同的 JSP 文件两次

java - 如何以垂直方式填充 TableViewer

java - Tomcat 无法找到我的 servlet

java - 使用 JSTL forEach 迭代 ArrayList 项

java - HttpServletRequest - 设置参数

tomcat - Servlet 可以直接在 localhost 上访问,但不能在站点名称后访问