如何将项目URL更改为最后一个名为的servlet?

时间:2015-06-14 13:33:35

标签: java-ee servlets

从servlet" servlet.html",我可以调用另一个servlet" servlet2.html"像这样:

dispatcher = getServletContext().getRequestDispatcher("/servlet2.html");

但是,在brouzer中,URL来自第一个servlet:

http://localhost:8080/project/servlet.html

我希望它是当前servlet的URL。

http://localhost:8080/project/servlet2.html

这可能吗?

1 个答案:

答案 0 :(得分:0)

您想要的是执行重定向:response.sendRedirect("/servlet2.html")

<强> TL; DR;

Dispatcher只会将请求传递给另一个servlet,因此客户端看不到任何更改。

当您执行redirect时,服务器正在发送带有HTTP代码302和参数Location的响应,其中包含servlet2.html的完整网址。当Web浏览器收到此类响应时,它将对Location参数中给出的URL执行另一个请求。

Here您可以找到更多解释。