我正在尝试重定向我的回复,但我被困在链接路径上。
以下命令将我带到tomcat的localhost并在那里搜索页面但是找不到任何内容,如预期的那样。
response.sendRedirect("/myPage.html");
为了解决这个问题,我必须在链接路径中输入我的根文件夹名称(来自webaps的名称),但我认为这不是一个好主意。
response.sendRedirect("/mySite/myPage.html");
为什么会这样?除了getRequestURL()之外还有其他方法可以解决这个问题吗?
答案 0 :(得分:2)
相对重定向网址是相对于当前请求网址(您在浏览器地址栏中看到的网址)。前导/
会将您带到域根目录。这种行为是完全可预测和正常的。如果myPage.html
与当前请求网址位于同一文件夹中,那么您只需删除潜在客户/
:
response.sendRedirect("myPage.html");
或者,如果由于当前请求URL可以来自您的webapp中的任何位置而永远无法可靠地预测,那么只需动态地包含上下文路径:
response.sendRedirect(request.getContextPath() + "/myPage.html");