2011-03-10 45 views
5

目前,我在我的servlet给用户的新页面上,使用如何Servlet的重定向到指定的URL

request.getRequestDispatcher("thePage.html").forward(request, response); 

。但是servlet的URL保留在浏览器地址栏中。我希望目标页面的URL在浏览器地址栏中显示,而不是初始的servlet URL。我该如何做到这一点?

回答

11

你可以做response.sendRedirect("thePage.html"),但那个页面需要直接从互联网上访问。特别是,它可以直接访问,而无需首先访问servlet。它也会产生额外的往返(而前进只是在相同的请求 - 响应周期内返回结果)。

根据你正在尝试做什么,你也应该看看Servlet过滤器以及将任何名称(包括“thePage.html”和路径前缀)关联到Servlet的可能性。