diff options
Diffstat (limited to 'client-compiler/src/com/vaadin/server/widgetsetutils/metadata/WidgetInitVisitor.java')
-rw-r--r-- | client-compiler/src/com/vaadin/server/widgetsetutils/metadata/WidgetInitVisitor.java | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/WidgetInitVisitor.java b/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/WidgetInitVisitor.java index a77b523d14..9a9cac18ba 100644 --- a/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/WidgetInitVisitor.java +++ b/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/WidgetInitVisitor.java @@ -42,6 +42,16 @@ public class WidgetInitVisitor extends TypeVisitor { // Needs GWT constructor if createWidget is not overridden if (createWidgetClass.getQualifiedSourceName().equals( AbstractComponentConnector.class.getCanonicalName())) { + if (getWidget + .getEnclosingType() + .getQualifiedSourceName() + .equals(AbstractComponentConnector.class + .getCanonicalName())) { + logger.log(Type.ERROR, type.getQualifiedSourceName() + + " must override either createWidget or getWidget"); + throw new UnableToCompleteException(); + } + bundle.setNeedsGwtConstructor(widgetType); // Also needs widget type to find the right GWT constructor |