6

通常、JSP でリクエスト URL を取得するには、

${pageContext.request.requestURL}

しかし、私が取り組んでいるプロジェクトでは(私が推測するタイルを使用しているため)、上記を実行すると、次のような結果が得られます

WEB-INF/pathTo/pageName.jsp

リクエスト URL が別のものであり、それがタイルを使用して含まれる JSP の単なるパスであっても。

この状況で JSP EL を使用してリクエスト URL を取得するにはどうすればよいですか?

4

1 に答える 1

4

Tiles はすでにリクエストを書き換え/転送しているため、jsp がリクエストを受け取るまでに、それは元のリクエストではありませんでした。

できることは2つ..

  1. コントローラーで元のURLを取得し、属性として配置してrequest.setAttribute("origRequestURL", request.getRequestURL())から使用します${origRequestURL}

  2. この属性が転送前にオリジナルを維持しているかどうかを確認します: <% request.getAttribute("javax.servlet.forward.request_uri"); %>または${requestScope['javax.servlet.forward.request_uri']}

于 2013-01-10T09:10:07.697 に答える