Author: almaw Date: Tue May 22 09:24:20 2007 New Revision: 540635 URL: http://svn.apache.org/viewvc?view=rev&rev=540635 Log: Behave correctly for appending arrays.
Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/AbstractRequestTargetUrlCodingStrategy.java Modified: incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/AbstractRequestTargetUrlCodingStrategy.java URL: http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/AbstractRequestTargetUrlCodingStrategy.java?view=diff&rev=540635&r1=540634&r2=540635 ============================================================================== --- incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/AbstractRequestTargetUrlCodingStrategy.java (original) +++ incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/AbstractRequestTargetUrlCodingStrategy.java Tue May 22 09:24:20 2007 @@ -114,12 +114,25 @@ while (entries.hasNext()) { Map.Entry entry = (Entry)entries.next(); - if (entry.getValue() != null) + Object value = entry.getValue(); + if (value != null) { - String escapedValue = urlEncode(entry.getValue().toString()); - if (!Strings.isEmpty(escapedValue)) - { - url.append("/").append(entry.getKey()).append("/").append(escapedValue); + if (value instanceof String[]) { + String[] values = (String[])value; + for (int i = 0; i < values.length; i++) { + String escapedValue = urlEncode(values[i]); + if (!Strings.isEmpty(escapedValue)) + { + url.append("/").append(entry.getKey()).append("/").append(escapedValue); + } + } + } + else { + String escapedValue = urlEncode(value.toString()); + if (!Strings.isEmpty(escapedValue)) + { + url.append("/").append(entry.getKey()).append("/").append(escapedValue); + } } } }