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>
+

Reply via email to