[
https://issues.apache.org/jira/browse/HTTPCLIENT-1195?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13400152#comment-13400152
]
Sebb commented on HTTPCLIENT-1195:
----------------------------------
I think the problem is caused by .URIUtils.rewriteURI() which calls
uribuilder.setPath(normalizePath(uribuilder.getPath()));
normalizePath() is OK, but calling setPath() sets encodedPath to null, which
means it can no longer be used.
Seems to me that the normalization should be done by UriBuilder, not tacked on
externally, as that causes unwanted side effects.
I think normalizePath should be moved to UriBuilder.
> URIBuilder-created query strings are double-escaped
> ---------------------------------------------------
>
> Key: HTTPCLIENT-1195
> URL: https://issues.apache.org/jira/browse/HTTPCLIENT-1195
> Project: HttpComponents HttpClient
> Issue Type: Bug
> Components: HttpClient
> Affects Versions: 4.2 Final
> Environment: java version "1.6.0_24"
> OpenJDK Runtime Environment (IcedTea6 1.11.1) (6b24-1.11.1-4ubuntu3)
> OpenJDK 64-Bit Server VM (build 20.0-b12, mixed mode)
> Reporter: Chris K. Jester-Young
> Fix For: 4.2.1
>
>
> When setting parameters in URIBuilder, the keys and values are
> double-escaped: once in URIBuilder.build(), and again in
> URI.appendSchemeSpecificPart(). Example:
> URIBuilder ub = new URIBuilder("http://www.google.com/");
> ub.addParameter("foo=bar", "baz&qux");
> ub.build(); // http://www.google.com/?foo%253Dbar=baz%2526qux
> In order to avoid this problem, URIBuilder.build() should use URI's
> one-argument constructor, which does not try to do extra escaping.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]