Author: jbq
Date: Sun May 6 10:43:32 2007
New Revision: 535639
URL: http://svn.apache.org/viewvc?view=rev&rev=535639
Log:
WICKET-65 Handle String array in PageParameters
Modified:
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebRequestCodingStrategy.java
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/QueryStringUrlCodingStrategy.java
Modified:
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebRequestCodingStrategy.java
URL:
http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebRequestCodingStrategy.java?view=diff&rev=535639&r1=535638&r2=535639
==============================================================================
---
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebRequestCodingStrategy.java
(original)
+++
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/protocol/http/request/WebRequestCodingStrategy.java
Sun May 6 10:43:32 2007
@@ -47,6 +47,7 @@
import org.apache.wicket.request.IRequestTargetMountsInfo;
import org.apache.wicket.request.RequestParameters;
import org.apache.wicket.request.target.coding.IRequestTargetUrlCodingStrategy;
+import org.apache.wicket.request.target.coding.WebRequestEncoder;
import
org.apache.wicket.request.target.component.BookmarkableListenerInterfaceRequestTarget;
import
org.apache.wicket.request.target.component.BookmarkablePageRequestTarget;
import
org.apache.wicket.request.target.component.IBookmarkablePageRequestTarget;
@@ -672,21 +673,14 @@
}
}
- boolean firstParameter = true;
+ WebRequestEncoder encoder = new WebRequestEncoder(url);
if (!application.getHomePage().equals(pageClass)
|| !"".equals(pageMapName)
|| (application.getHomePage().equals(pageClass)
&& requestTarget instanceof BookmarkableListenerInterfaceRequestTarget))
{
- firstParameter = false;
- url.append('?');
-
url.append(WebRequestCodingStrategy.BOOKMARKABLE_PAGE_PARAMETER_NAME);
- url.append('=');
-
-
- // Add <page-map-name>:<bookmarkable-page-class>
- String pageClassName = pageClass.getName();
-
/*
+ * Add <page-map-name>:<bookmarkable-page-class>
+ *
* Encode the url so it is correct even for class names
containing
* non ASCII characters, like ä, æ, ø, å etc.
*
@@ -695,16 +689,8 @@
* because we can't rely on the browser to interpret
the unencoded
* url correctly.
*/
- try
- {
- url.append(URLEncoder.encode(
- pageMapName +
Component.PATH_SEPARATOR + pageClassName, "UTF-8"));
- }
- catch (UnsupportedEncodingException ex)
- {
- log.error(ex.getMessage(), ex);
- url.append(pageMapName +
Component.PATH_SEPARATOR + pageClassName);
- }
+
encoder.addValue(WebRequestCodingStrategy.BOOKMARKABLE_PAGE_PARAMETER_NAME,
+ pageMapName + Component.PATH_SEPARATOR
+ pageClass.getName());
}
// Get page parameters
@@ -726,28 +712,7 @@
final String value = parameters.getString(key);
if (value != null)
{
- String escapedValue = value;
- try
- {
- escapedValue =
URLEncoder.encode(escapedValue, application
-
.getRequestCycleSettings().getResponseRequestEncoding());
- }
- catch (UnsupportedEncodingException ex)
- {
- log.error(ex.getMessage(), ex);
- }
- if (!firstParameter)
- {
- url.append('&');
- }
- else
- {
- firstParameter = false;
- url.append('?');
- }
- url.append(key);
- url.append('=');
- url.append(escapedValue);
+ encoder.addValue(key, value);
}
}
}
Modified:
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/QueryStringUrlCodingStrategy.java
URL:
http://svn.apache.org/viewvc/incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/QueryStringUrlCodingStrategy.java?view=diff&rev=535639&r1=535638&r2=535639
==============================================================================
---
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/QueryStringUrlCodingStrategy.java
(original)
+++
incubator/wicket/trunk/jdk-1.4/wicket/src/main/java/org/apache/wicket/request/target/coding/QueryStringUrlCodingStrategy.java
Sun May 6 10:43:32 2007
@@ -124,7 +124,6 @@
if (parameters != null && parameters.size() > 0)
{
- boolean firstParam = url.indexOf("?") < 0;
final Iterator entries;
if (UnitTestSettings.getSortUrlParameters())
{