HttpServletRequestのgetRequestURLにはQueryStringが含まれていないので、以下のようにする必要がある。
public static String getFullURL(HttpServletRequest request) {
StringBuffer requestURL = request.getRequestURL();
String queryString = request.getQueryString();
if (queryString == null) {
return requestURL.toString();
} else {
return requestURL.append('?').append(queryString).toString();
}
}
一発で取れるメソッドを用意してくれても良かったんじゃ無いかなぁ。。
参考: