You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by mg...@apache.org on 2011/02/16 15:50:48 UTC

svn commit: r1071275 - /wicket/trunk/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java

Author: mgrigorov
Date: Wed Feb 16 14:50:48 2011
New Revision: 1071275

URL: http://svn.apache.org/viewvc?rev=1071275&view=rev
Log:
PageParameters.add() works with java.lang.Object for the value.
Some apps from 1.4 (jolira's stateless components) passed String[] as value and it properly parsed all values. 
Fix this to work in 1.5 as well.


Modified:
    wicket/trunk/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java

Modified: wicket/trunk/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java
URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java?rev=1071275&r1=1071274&r2=1071275&view=diff
==============================================================================
--- wicket/trunk/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java (original)
+++ wicket/trunk/wicket-request/src/main/java/org/apache/wicket/request/mapper/parameter/PageParameters.java Wed Feb 16 14:50:48 2011
@@ -18,6 +18,7 @@ package org.apache.wicket.request.mapper
 
 import java.io.Serializable;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.Iterator;
 import java.util.List;
@@ -374,17 +375,31 @@ public class PageParameters implements S
 		{
 			namedParameters = new ArrayList<Entry>(1);
 		}
-		Entry entry = new Entry();
-		entry.key = name;
-		entry.value = value.toString();
 
-		if (index == -1)
+		List<String> values = new ArrayList<String>();
+		if (value instanceof String[])
 		{
-			namedParameters.add(entry);
+			values.addAll(Arrays.asList((String[])value));
 		}
 		else
 		{
-			namedParameters.add(index, entry);
+			values.add(value.toString());
+		}
+
+		for (String val : values)
+		{
+			Entry entry = new Entry();
+			entry.key = name;
+			entry.value = val;
+
+			if (index == -1)
+			{
+				namedParameters.add(entry);
+			}
+			else
+			{
+				namedParameters.add(index, entry);
+			}
 		}
 		return this;
 	}