2012-11-26 151 views
4

通常情况下,获得在JSP请求的URL,我会用

${pageContext.request.requestURL} 

,但是,从项目,我有工作(因为我们使用的瓷砖我猜)如果我运行上述操作,我会得到类似于

WEB-INF/pathTo/pageName.jsp 

即使请求URL是另一个,并且这只是使用切片包含的JSP的路径。

在这种情况下,如何使用JSP EL获取请求URL?

回答

3

瓷砖已经重写/转发请求,所以等到您的jsp获取请求时,它不是原始请求。

两件事情,你可以在你的控制器抢做..

  1. 原始URL,并把它作为一个属性request.setAttribute("origRequestURL", request.getRequestURL()),然后用${origRequestURL}

  2. 看看这个属性保持着原来的前正向: <% request.getAttribute("javax.servlet.forward.request_uri"); %>${requestScope['javax.servlet.forward.request_uri']}