]> source.dussan.org Git - vaadin-framework.git/commitdiff
Do not consider compiler introduced methods when determining state class (#14003)
authorArtur Signell <artur@vaadin.com>
Wed, 18 Jun 2014 10:35:08 +0000 (13:35 +0300)
committerArtur Signell <artur@vaadin.com>
Wed, 18 Jun 2014 10:43:21 +0000 (13:43 +0300)
Change-Id: Ia2c3b8331f1ae34effceb0bb624cfaa7ba8578ed

server/src/com/vaadin/server/AbstractClientConnector.java

index 92c235167cb3f47d80ca1274f6ebfc0f183e0854..d03f032c886903f3e49a682131966adc810a28f4 100644 (file)
@@ -292,11 +292,13 @@ public abstract class AbstractClientConnector implements ClientConnector,
                     Method m = class1.getDeclaredMethod("getState",
                             (Class[]) null);
                     Class<?> type = m.getReturnType();
-                    return type.asSubclass(SharedState.class);
+                    if (!m.isSynthetic()) {
+                        return type.asSubclass(SharedState.class);
+                    }
                 } catch (NoSuchMethodException nsme) {
-                    // Try in superclass instead
-                    class1 = class1.getSuperclass();
                 }
+                // Try in superclass instead
+                class1 = class1.getSuperclass();
             }
             throw new NoSuchMethodException(getClass().getCanonicalName()
                     + ".getState()");