2012-11-26 152 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']}