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"); } }
