Details
-
Type:
Bug
-
Status:
Closed
-
Priority:
Minor
-
Resolution: Fixed
-
Affects Version/s: 3.0.0-M4
-
Fix Version/s: 3.0.1
-
Component/s: Transport: HTTP(S) / Jetty
-
Labels:None
-
Environment:
WindowsXP SP3, Sun JDK 1.6.0_14
-
User impact:Medium
-
Similar Issues:None
Description
Hi. I think that HttpRequestBodyToParamMap class has a problems.
HttpRequestBodyToParamMap uses URI#getQuery().
this method decodes the query string without specifying an encoding(probably decoded by the platform's default). and decoded query string is decoded once more by URLDecoder later.
This is a problem for non ascii query string, for example Windows-31J which is still used widely in Japan.
So instead of URI#getQuery(), use URI#getRawQuery() here. URL decoding is happily performed by URLDecoder later, and only once ![]()
Here is a patch for this problem and functional tests.
best regards.