WICKET-6264 Form: improve error message for disabled/invisible 
IFormSubmittingComponent and for not rendered components


Project: http://git-wip-us.apache.org/repos/asf/wicket/repo
Commit: http://git-wip-us.apache.org/repos/asf/wicket/commit/12e93e42
Tree: http://git-wip-us.apache.org/repos/asf/wicket/tree/12e93e42
Diff: http://git-wip-us.apache.org/repos/asf/wicket/diff/12e93e42

Branch: refs/heads/master
Commit: 12e93e4209f5ba29c57d3e1ea1dbaf7cb26cf560
Parents: fc8bd69
Author: Martin Tzvetanov Grigorov <[email protected]>
Authored: Mon Oct 31 21:04:46 2016 +0100
Committer: Martin Tzvetanov Grigorov <[email protected]>
Committed: Tue Nov 1 08:29:46 2016 +0100

----------------------------------------------------------------------
 .../src/main/java/org/apache/wicket/Component.java      |  8 ++++----
 wicket-core/src/main/java/org/apache/wicket/Page.java   |  8 ++++----
 .../java/org/apache/wicket/markup/html/form/Form.java   | 12 ++++--------
 3 files changed, 12 insertions(+), 16 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/wicket/blob/12e93e42/wicket-core/src/main/java/org/apache/wicket/Component.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/Component.java 
b/wicket-core/src/main/java/org/apache/wicket/Component.java
index c2b6a92..8f140b6 100644
--- a/wicket-core/src/main/java/org/apache/wicket/Component.java
+++ b/wicket-core/src/main/java/org/apache/wicket/Component.java
@@ -3324,11 +3324,11 @@ public abstract class Component
                                else
                                {
                                        buffer.append(", page = ")
-                                               
.append(getPage().getPageClass().getName())
+                                               
.append(Classes.name(getPage().getPageClass()))
                                                .append(", path = ")
-                                               .append(getPath())
-                                               .append('.')
-                                               
.append(Classes.simpleName(getClass()))
+                                               .append(getPageRelativePath())
+                                               .append(", type = ")
+                                               
.append(Classes.name(getClass()))
                                                .append(", isVisible = ")
                                                .append((determineVisibility()))
                                                .append(", isVersioned = ")

http://git-wip-us.apache.org/repos/asf/wicket/blob/12e93e42/wicket-core/src/main/java/org/apache/wicket/Page.java
----------------------------------------------------------------------
diff --git a/wicket-core/src/main/java/org/apache/wicket/Page.java 
b/wicket-core/src/main/java/org/apache/wicket/Page.java
index 3c24a1e..fb4f04d 100644
--- a/wicket-core/src/main/java/org/apache/wicket/Page.java
+++ b/wicket-core/src/main/java/org/apache/wicket/Page.java
@@ -584,17 +584,17 @@ public abstract class Page extends MarkupContainer
                                                        // Add to explanatory 
string to buffer
                                                        
buffer.append(Integer.toString(unrenderedComponents.size()))
                                                                .append(". ")
-                                                               
.append(component)
+                                                               
.append(component.toString(true))
                                                                .append('\n');
                                                        String metadata = 
component.getMetaData(Component.CONSTRUCTED_AT_KEY);
                                                        if (metadata != null)
                                                        {
-                                                               
buffer.append(metadata);
+                                                               
buffer.append(metadata).append('\n');
                                                        }
                                                        metadata = 
component.getMetaData(Component.ADDED_AT_KEY);
                                                        if (metadata != null)
                                                        {
-                                                               
buffer.append(metadata);
+                                                               
buffer.append(metadata).append('\n');
                                                        }
                                                }
                                                else
@@ -658,7 +658,7 @@ public abstract class Page extends MarkupContainer
                                {
                                        // Throw exception
                                        throw new WicketRuntimeException(
-                                               "The component(s) below failed 
to render. Possible reasons could be that: 1) you have added a component in 
code but forgot to reference it in the markup (thus the component will never be 
rendered), 2) if your components were added in a parent container then make 
sure the markup for the child container includes them in <wicket:extend>.\n\n" +
+                                               "The component(s) below failed 
to render. Possible reasons could be that:\n\t1) you have added a component in 
code but forgot to reference it in the markup (thus the component will never be 
rendered),\n\t2) if your components were added in a parent container then make 
sure the markup for the child container includes them in <wicket:extend>.\n\n" +
                                                        buffer.toString());
                                }
                        }

http://git-wip-us.apache.org/repos/asf/wicket/blob/12e93e42/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Form.java
----------------------------------------------------------------------
diff --git 
a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Form.java 
b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Form.java
index 55a7679..a197dd8 100644
--- a/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Form.java
+++ b/wicket-core/src/main/java/org/apache/wicket/markup/html/form/Form.java
@@ -815,21 +815,17 @@ public class Form<T> extends WebMarkupContainer
 
                        if (!component.isVisibleInHierarchy())
                        {
-                               Page page = findPage();
                                throw new WicketRuntimeException("Submit Button 
" +
-                                               
submittingComponent.getInputName() + " (path=" +
-                                               component.getPath() + ", 
pageClass=" +
-                                               (page == null ? "<unknown>" : 
page.getPageClass().getName()) +
+                                               
submittingComponent.getInputName() + " (" +
+                                               component.toString(true) +
                                                ") is not visible");
                        }
 
                        if (!component.isEnabledInHierarchy())
                        {
-                               Page page = findPage();
                                throw new WicketRuntimeException("Submit Button 
" +
-                                               
submittingComponent.getInputName() + " (path=" +
-                                               component.getPath() + ", 
pageClass=" +
-                                               (page == null ? "<unknown>" : 
page.getPageClass().getName()) +
+                                               
submittingComponent.getInputName() + " (" +
+                                               component.toString(true) +
                                                ") is not enabled");
                        }
                }

Reply via email to