Author: mgrigorov Date: Fri Jan 14 16:35:39 2011 New Revision: 1059062 URL: http://svn.apache.org/viewvc?rev=1059062&view=rev Log: WICKET-3333 Links with multiple parameters are wrongly generated WICKET-2829 Tag attributes values are not escaped properly during writeOutput
Don't XML escape the link url. It is escaped in a central place (see WICKET-2829) Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Check.java wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Radio.java wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/image/Image.java wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/resolver/AutoLinkResolver.java Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Check.java URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Check.java?rev=1059062&r1=1059061&r2=1059062&view=diff ============================================================================== --- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Check.java (original) +++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Check.java Fri Jan 14 16:35:39 2011 @@ -207,7 +207,7 @@ public class Check<T> extends LabeledWeb { // NOTE: do not encode the url as that would give invalid JavaScript tag.put("onclick", "window.location.href='" + url + - (url.toString().indexOf('?') > -1 ? "&" : "?") + group.getInputName() + + (url.toString().indexOf('?') > -1 ? "&" : "?") + group.getInputName() + "=' + this.value;"); } } Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java?rev=1059062&r1=1059061&r2=1059062&view=diff ============================================================================== --- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java (original) +++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/CheckBox.java Fri Jan 14 16:35:39 2011 @@ -167,7 +167,7 @@ public class CheckBox extends FormCompon // NOTE: do not encode the url as that would give invalid // JavaScript tag.put("onclick", "window.location.href='" + url + - (url.toString().indexOf('?') > -1 ? "&" : "?") + getInputName() + + (url.toString().indexOf('?') > -1 ? "&" : "?") + getInputName() + "=' + this.checked;"); } Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Radio.java URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Radio.java?rev=1059062&r1=1059061&r2=1059062&view=diff ============================================================================== --- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Radio.java (original) +++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Radio.java Fri Jan 14 16:35:39 2011 @@ -193,7 +193,7 @@ public class Radio<T> extends LabeledWeb { // NOTE: do not encode the url as that would give invalid JavaScript tag.put("onclick", "window.location.href='" + url + - (url.toString().indexOf('?') > -1 ? "&" : "?") + group.getInputName() + + (url.toString().indexOf('?') > -1 ? "&" : "?") + group.getInputName() + "=' + this.value;"); } } Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java?rev=1059062&r1=1059061&r2=1059062&view=diff ============================================================================== --- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java (original) +++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/form/RadioChoice.java Fri Jan 14 16:35:39 2011 @@ -416,8 +416,7 @@ public class RadioChoice<T> extends Abst // invalid JavaScript buffer.append(" onclick=\"window.location.href='") .append(url) - .append( - (url.toString().indexOf('?') > -1 ? "&" : "?") + getInputName()) + .append((url.toString().indexOf('?') > -1 ? "&" : "?") + getInputName()) .append("=") .append(id) .append("';\""); Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/image/Image.java URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/image/Image.java?rev=1059062&r1=1059061&r2=1059062&view=diff ============================================================================== --- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/image/Image.java (original) +++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/html/image/Image.java Fri Jan 14 16:35:39 2011 @@ -253,7 +253,7 @@ public class Image extends WebComponent protected final void addAntiCacheParameter(final ComponentTag tag) { String url = tag.getAttributes().getString("src"); - url = url + (url.contains("?") ? "&" : "?"); + url = url + (url.contains("?") ? "&" : "?"); url = url + "wicket:antiCache=" + System.currentTimeMillis(); tag.put("src", url); Modified: wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/resolver/AutoLinkResolver.java URL: http://svn.apache.org/viewvc/wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/resolver/AutoLinkResolver.java?rev=1059062&r1=1059061&r2=1059062&view=diff ============================================================================== --- wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/resolver/AutoLinkResolver.java (original) +++ wicket/trunk/wicket-core/src/main/java/org/apache/wicket/markup/resolver/AutoLinkResolver.java Fri Jan 14 16:35:39 2011 @@ -620,7 +620,7 @@ public final class AutoLinkResolver impl CharSequence url = getRequestCycle().urlFor(handler); // generate the href attribute - tag.put(attribute, Strings.replaceAll(url, "&", "&")); + tag.put(attribute, url); } }