summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ConnectorBundle.java4
-rw-r--r--uitest/src/com/vaadin/tests/widgetset/client/AbstractSuperclassForBean.java26
-rw-r--r--uitest/src/com/vaadin/tests/widgetset/client/BeanWithAbstractSuperclass.java24
-rw-r--r--uitest/src/com/vaadin/tests/widgetset/client/SerializerTestState.java2
4 files changed, 54 insertions, 2 deletions
diff --git a/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ConnectorBundle.java b/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ConnectorBundle.java
index 8a4ca8f795..8bbcac4ecb 100644
--- a/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ConnectorBundle.java
+++ b/client-compiler/src/com/vaadin/server/widgetsetutils/metadata/ConnectorBundle.java
@@ -253,9 +253,9 @@ public class ConnectorBundle {
needsSuperClass = needsSuperClass.getSuperclass();
}
- for (Property property : getProperties(typeAsClass)) {
- setNeedsGwtConstructor(property.getBeanType());
+ setNeedsGwtConstructor(typeAsClass);
+ for (Property property : getProperties(typeAsClass)) {
setNeedsProperty(property);
JType propertyType = property.getPropertyType();
diff --git a/uitest/src/com/vaadin/tests/widgetset/client/AbstractSuperclassForBean.java b/uitest/src/com/vaadin/tests/widgetset/client/AbstractSuperclassForBean.java
new file mode 100644
index 0000000000..0ea19bd965
--- /dev/null
+++ b/uitest/src/com/vaadin/tests/widgetset/client/AbstractSuperclassForBean.java
@@ -0,0 +1,26 @@
+/*
+ * Copyright 2000-2014 Vaadin Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package com.vaadin.tests.widgetset.client;
+
+import java.io.Serializable;
+
+/**
+ * Dummy state bean used just to check that nothing breaks when generating code
+ * to serialize beans with properties in abstract superclasses
+ */
+public abstract class AbstractSuperclassForBean implements Serializable {
+ public String propertyInAbstractSuperclass;
+}
diff --git a/uitest/src/com/vaadin/tests/widgetset/client/BeanWithAbstractSuperclass.java b/uitest/src/com/vaadin/tests/widgetset/client/BeanWithAbstractSuperclass.java
new file mode 100644
index 0000000000..a3530f19e9
--- /dev/null
+++ b/uitest/src/com/vaadin/tests/widgetset/client/BeanWithAbstractSuperclass.java
@@ -0,0 +1,24 @@
+/*
+ * Copyright 2000-2014 Vaadin Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License"); you may not
+ * use this file except in compliance with the License. You may obtain a copy of
+ * the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations under
+ * the License.
+ */
+package com.vaadin.tests.widgetset.client;
+
+/**
+ * Dummy state bean used just to check that nothing breaks when generating code
+ * to serialize beans with properties in abstract superclasses
+ */
+public class BeanWithAbstractSuperclass extends AbstractSuperclassForBean {
+ public String propertyInsubclass;
+}
diff --git a/uitest/src/com/vaadin/tests/widgetset/client/SerializerTestState.java b/uitest/src/com/vaadin/tests/widgetset/client/SerializerTestState.java
index d22165b2bb..faf41fbf88 100644
--- a/uitest/src/com/vaadin/tests/widgetset/client/SerializerTestState.java
+++ b/uitest/src/com/vaadin/tests/widgetset/client/SerializerTestState.java
@@ -97,4 +97,6 @@ public class SerializerTestState extends AbstractComponentState {
public Date date1;
public Date date2;
+ public BeanWithAbstractSuperclass beanWithAbstractSuperclass;
+
}