У меня есть интерфейс A:GWT Классы генератор наследственного интерфейса
public interface A{
String someMethod();
}
И используя GWT.create (класс A.class) я получаю мгновенный реализации этого интерфейса.
Однако, если я создаю интерфейс B();
public interface B extends A{
String someOtherMethod();
}
И делать GWT.create (B.class) я получить реализацию интерфейса B, но без реализаций методов интерфейса.
И получаю ошибку компиляции:
[Ошибка] Строка 3: Тип B_impl должен реализовать абстрактный метод A.someMethod()
Дополнительно: Как я узнать позже, может быть это связано с Аннотации.
Так у меня есть:
public interface annotationHelperClass{
}
, что имеет:
public final class annotationHelperClassGenerator{
//Some code
}
аннотация:
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.METHOD)
public @interface MyAnnotation {
String someParam();
}
так интерфейс А будет:
public interface A extends annotationHelperClass{
@MyAnnotation(someParam = "Some string")
String someMethod();
}
интерфейс B:
public interface B extends A{
@MyAnnotation(someParam = "Some another string")
String someOtherMethod();
}
GWT.create (B.class) позволяет создать интерфейс ??? –
Нет, это позволяет мне создать мгновение этого интерфейса, но только с помощью методов, объявленных в интерфейсе B. –
Может быть, в Annotations я использую аннотации в интерфейсе A, которые помогают мне генерировать классы, но аннотации не наследуются к интерфейсу B, поэтому GWT не может правильно сгенерировать эти методы! –