[
https://issues.apache.org/jira/browse/HTTPCLIENT-1195?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13291746#comment-13291746
]
Jeff Lupien commented on HTTPCLIENT-1195:
-----------------------------------------
Have you tested the fix against the example in this bug? I'm not sure the fix
as implemented will handle the cases where "=" or "&" are in the parameter
names or values. It might make sense to go back to encoding the parameter
names/values in the build() method and using a different URI() constructor that
doesn't do encoding for you (e.g. URI(String)).
> 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]