Updated Branches: refs/heads/wicket-1.5.x e2bca1091 -> 70101b03e
WICKET-4641 AjaxFallbackLink and log a warning when there are several ajax event behaviors on the same event Project: http://git-wip-us.apache.org/repos/asf/wicket/repo Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/70101b03 Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/70101b03 Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/70101b03 Branch: refs/heads/wicket-1.5.x Commit: 70101b03eff8d3107ab78312a24934b6e3822293 Parents: e2bca10 Author: Martin Tzvetanov Grigorov <[email protected]> Authored: Fri Jul 27 18:37:37 2012 +0300 Committer: Martin Tzvetanov Grigorov <[email protected]> Committed: Fri Jul 27 18:37:37 2012 +0300 ---------------------------------------------------------------------- .../ajax/markup/html/form/AjaxFallbackButton.java | 21 ++++++++++++++ .../test/java/org/apache/wicket/ajax/HomePage.html | 22 +++++++------- 2 files changed, 32 insertions(+), 11 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/wicket/blob/70101b03/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxFallbackButton.java ---------------------------------------------------------------------- diff --git a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxFallbackButton.java b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxFallbackButton.java index 6e61692..a1d64ee 100644 --- a/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxFallbackButton.java +++ b/wicket-core/src/main/java/org/apache/wicket/ajax/markup/html/form/AjaxFallbackButton.java @@ -21,10 +21,13 @@ import org.apache.wicket.ajax.AjaxChannel; import org.apache.wicket.ajax.AjaxRequestTarget; import org.apache.wicket.ajax.IAjaxCallDecorator; import org.apache.wicket.ajax.form.AjaxFormSubmitBehavior; +import org.apache.wicket.markup.ComponentTag; import org.apache.wicket.markup.html.form.Button; import org.apache.wicket.markup.html.form.Form; import org.apache.wicket.model.IModel; import org.apache.wicket.util.string.AppendingStringBuffer; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** * An ajax submit button that will degrade to a normal request if ajax is not available or @@ -41,6 +44,8 @@ public abstract class AjaxFallbackButton extends Button { private static final long serialVersionUID = 1L; + private static final Logger LOG = LoggerFactory.getLogger(AjaxFallbackButton.class); + private final Form<?> mForm; /** @@ -210,4 +215,20 @@ public abstract class AjaxFallbackButton extends Button { return isEnabledInHierarchy(); } + + @Override + protected void onComponentTag(ComponentTag tag) + { + String tagName = tag.getName(); + if (LOG.isWarnEnabled() && !("input".equalsIgnoreCase(tagName) || "button".equalsIgnoreCase(tagName))) + { + LOG.warn("{} must be used only with <input type=\"submit\"> or <input type=\"submit\"> markup elements. " + + "The fallback functionality doesn't work for other markup elements. " + + "Component path: {}, markup element: {}.", + new Object[] { AjaxFallbackButton.class. getSimpleName(),getClassRelativePath(), tagName }); + + } + + super.onComponentTag(tag); + } } http://git-wip-us.apache.org/repos/asf/wicket/blob/70101b03/wicket-core/src/test/java/org/apache/wicket/ajax/HomePage.html ---------------------------------------------------------------------- diff --git a/wicket-core/src/test/java/org/apache/wicket/ajax/HomePage.html b/wicket-core/src/test/java/org/apache/wicket/ajax/HomePage.html index c59651e..f137eaf 100644 --- a/wicket-core/src/test/java/org/apache/wicket/ajax/HomePage.html +++ b/wicket-core/src/test/java/org/apache/wicket/ajax/HomePage.html @@ -1,10 +1,10 @@ -<html> - <head> - <title>Wicket Quickstart Archetype Homepage</title> - </head> - <body> - <strong>Wicket Quickstart Archetype Homepage</strong> - <br/><br/> +<html> + <head> + <title>Wicket Quickstart Archetype Homepage</title> + </head> + <body> + <strong>Wicket Quickstart Archetype Homepage</strong> + <br/><br/> <span wicket:id="message">message will be here</span> <form wicket:id="form"> @@ -17,10 +17,10 @@ </wicket:container> </div> - <a href="#" wicket:id="addButton">Click me to add a row</a> + <input type="submit" href="#" wicket:id="addButton" value="Click me to add a row" /> </form> - </body> -</html> - + </body> +</html> +
