Handle String array in PageParameters
-------------------------------------
Key: WICKET-65
URL: http://issues.apache.org/jira/browse/WICKET-65
Project: Wicket
Issue Type: Bug
Components: wicket
Reporter: Jean-Baptiste Quenot
Attachments: 20061114-wicket-WebRequestCodingStrategy-StringArray
When building PageParameters, it is possible to repeat
the same parameter name to build a string array, this
is documented here:
http://wicket.sourceforge.net/apidocs/wicket/util/value/ValueMap.html#add(java.lang.String,%20java.lang.String)
However when issuing setResponsePage(MyPage.class,
params) the newly constructed URL does not honour the
string array parameter, only the first value is used.
Example:
PageParameters params = new PageParameters();
params.add("a", "1");
params.add("a", "2");
This builds a parameter that is a String[] with name
"a" and values: ["1", "2"]. But the URL shown in the
browser is: http://server/app?a=1 instead of
http://server/app?a=1&a=2
Note that in the target page I'm using
params.getStringArray("a") to get the string array.
Please find attached a patch against branch wicket-1.x
that adresses the URL encoding issue. The patch also
refactors the URL encoding logic to have a more readable
and compact code.
Thanks in advance!
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira