Author: tomekr Date: Wed Sep 2 07:31:56 2015 New Revision: 1700719 URL: http://svn.apache.org/r1700719 Log: SLING-4804 Use URL rather than URI to get the semicolon parameters
Modified: sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java Modified: sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java URL: http://svn.apache.org/viewvc/sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java?rev=1700719&r1=1700718&r2=1700719&view=diff ============================================================================== --- sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java (original) +++ sling/trunk/bundles/engine/src/main/java/org/apache/sling/engine/impl/request/RequestData.java Wed Sep 2 07:31:56 2015 @@ -231,16 +231,16 @@ public class RequestData { requestProgressTracker.startTimer("ResourceResolution"); final SlingHttpServletRequest request = getSlingRequest(); - final String requestURI = servletRequest.getRequestURI(); + StringBuffer requestURL = servletRequest.getRequestURL(); String path = request.getPathInfo(); - if (requestURI.contains(";") && !path.contains(";")) { - final String decodedURI; + if (requestURL.indexOf(";") > -1 && !path.contains(";")) { + final String decodedURL; try { - decodedURI = URLDecoder.decode(requestURI, "UTF-8"); + decodedURL = URLDecoder.decode(requestURL.toString(), "UTF-8"); } catch (UnsupportedEncodingException e) { throw new AssertionError("UTF-8 encoding is not supported"); } - path = path.concat(decodedURI.substring(decodedURI.indexOf(';'))); + path = path.concat(decodedURL.substring(decodedURL.indexOf(';'))); } Resource resource = resourceResolver.resolve(request, path);