2012-03-14 14 views
15

${requestScope['javax.servlet.forward.servlet_path']}は正しい文字列を取得しますが、URLに設定される可能性のあるパラメータは含まれません。JSTL - クエリ文字列を含む現在のURLを表示

例:

http://localhost/path/i/want?param=1が、私はこれは簡単に行うべきである感じを持っているが、それを把握することはできません私は、文字列/path/i/want?param=1

を与える必要があります。

ありがとうございます!

答えて

16

${requestScope['javax.servlet.forward.query_string']}から入手できます。

+0

私は(私が思った)ものが探していたものではなく、私が後にしたものでした。ありがとうございました。 – thonnor

6

私はしばらくも探しています。

<c:set var="req" value="${pageContext.request}" /> 
<c:set var="baseURL" value="${fn:replace(req.requestURL, req.requestURI, '')}" /> 
<c:set var="params" value="${requestScope['javax.servlet.forward.query_string']}"/> 
<c:set var="requestPath" value="${requestScope['javax.servlet.forward.request_uri']}"/> 
<c:set var="pageUrl" value="${ baseURL }${ requestPath }${ not empty params?'?'+=params:'' }"/> 
+0

ありがとうございました!!! –