Tomcat,sendRedirect使用绝对路径不起作用

时间:2013-07-23 05:31:59

标签: tomcat servlets

我有一个带有上下文根'myapp'的网络应用。和一个servlet myapp / page1和一个jsp myapp / page2.jsp。从servlet我使用'response.sendRedirect('/page2.jsp')重定向到jsp。它失败了。我注意到请求重定向是“http://localhost:8080/page2.jsp”(上下文根未包含在URL中)。
我的理解是容器会包含上下文根 环境:Tomcat 7,web.xml 3.0版,
我错过了什么?

1 个答案:

答案 0 :(得分:0)

不,你正在使用相对路径。 page2.jsp的绝对路径为"http://localhost:8080/"+request.getContextRoot()+"/page2.jsp"。这种方法的另一个优点是,如果您应该更改您的appserver,说JBoss或WebLogic或其他什么,您将不需要更改您的代码。