This is an automated email from the ASF dual-hosted git repository. mblow pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/asterixdb.git
commit 2525d512f3cc7b3c3e5fdbc0486632b4fac51507 Author: Ali Alsuliman <[email protected]> AuthorDate: Mon Mar 15 12:38:27 2021 -0700 [NO ISSUE][API] Decode request local path - user model changes: no - storage format changes: no - interface changes: no Details: Decode request local path. Change-Id: I28834cc239614baf6f3f1af6edfae33ca59f7a3d Reviewed-on: https://asterix-gerrit.ics.uci.edu/c/asterixdb/+/10543 Integration-Tests: Jenkins <[email protected]> Tested-by: Jenkins <[email protected]> Reviewed-by: Murtadha Hubail <[email protected]> --- .../java/org/apache/hyracks/http/server/AbstractServlet.java | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/hyracks-fullstack/hyracks/hyracks-http/src/main/java/org/apache/hyracks/http/server/AbstractServlet.java b/hyracks-fullstack/hyracks/hyracks-http/src/main/java/org/apache/hyracks/http/server/AbstractServlet.java index 514a7dd..fa64003 100644 --- a/hyracks-fullstack/hyracks/hyracks-http/src/main/java/org/apache/hyracks/http/server/AbstractServlet.java +++ b/hyracks-fullstack/hyracks/hyracks-http/src/main/java/org/apache/hyracks/http/server/AbstractServlet.java @@ -22,6 +22,8 @@ import static com.fasterxml.jackson.databind.MapperFeature.SORT_PROPERTIES_ALPHA import static com.fasterxml.jackson.databind.SerializationFeature.ORDER_MAP_ENTRIES_BY_KEYS; import java.io.IOException; +import java.io.UnsupportedEncodingException; +import java.net.URLDecoder; import java.nio.charset.StandardCharsets; import java.util.Arrays; import java.util.concurrent.ConcurrentMap; @@ -175,7 +177,12 @@ public abstract class AbstractServlet implements IServlet { public String localPath(IServletRequest request) { final String uri = request.getHttpRequest().uri(); int queryStart = uri.indexOf('?'); - return queryStart == -1 ? uri.substring(trim(uri)) : uri.substring(trim(uri), queryStart); + String localPath = queryStart == -1 ? uri.substring(trim(uri)) : uri.substring(trim(uri), queryStart); + try { + return URLDecoder.decode(localPath, StandardCharsets.UTF_8.name()); + } catch (UnsupportedEncodingException e) { + throw new IllegalArgumentException(e); + } } public String servletPath(IServletRequest request) {
