소스 검색

#615 encode queries

Shinsuke Sugaya 9 년 전
부모
커밋
ebb973c38d
1개의 변경된 파일9개의 추가작업 그리고 5개의 파일을 삭제
  1. 9 5
      src/main/java/org/codelibs/fess/helper/ViewHelper.java

+ 9 - 5
src/main/java/org/codelibs/fess/helper/ViewHelper.java

@@ -324,11 +324,15 @@ public class ViewHelper {
     protected String appendPDFSearchWord(final String url) {
     protected String appendPDFSearchWord(final String url) {
         final String queries = (String) LaRequestUtil.getRequest().getAttribute(Constants.REQUEST_QUERIES);
         final String queries = (String) LaRequestUtil.getRequest().getAttribute(Constants.REQUEST_QUERIES);
         if (queries != null) {
         if (queries != null) {
-            final StringBuilder buf = new StringBuilder(url.length() + 100);
-            buf.append(url).append("#search=%22");
-            buf.append(queries); // TODO encode
-            buf.append("%22");
-            return buf.toString();
+            try {
+                final StringBuilder buf = new StringBuilder(url.length() + 100);
+                buf.append(url).append("#search=%22");
+                buf.append(URLEncoder.encode(queries, Constants.UTF_8));
+                buf.append("%22");
+                return buf.toString();
+            } catch (UnsupportedEncodingException e) {
+                logger.warn("Unsupported encoding.",e);
+            }
         }
         }
         return url;
         return url;
     }
     }