我正在尝试在GWT中使用编辑器框架,以便我可以让多个编辑器编辑同一个bean(每个编辑器编辑一个不相交的字段子集)。
这大致是我所拥有的:
class EventEditor implements Editor<MajorEvent> {
// Dispatch to a sub editor.
// Later there will be multiple such sub editors with different types,
// but all implementing Editor<MajorEvent>.
@Path("")
public GenSubEditor genSubEditor() {
return genPresenter.getView().getSubEditor();
}
}
public class GenSubEditor implements Editor<MajorEvent> {
Editor<String> nameEditor() {
return endDate;
}
}
这是GWT编译器给我的错误:
The type `GenSubEditor` is assignable to the raw Editor type, but a type parameterization is required.
如果我在GenSubEditor
方法中将Editor<MajorEvent>
替换为genSubEditor
,则编译器不会抱怨。但是,似乎驱动程序生成器不解析我的子编辑器,并且永远找不到nameEditor
。所以这不是一个解决方案,或者它意味着我做了别的错误。
希望有人可以提供帮助。我没有提供SSCCE,因为我实际上并不知道如何创建一个存根gwt演示者/视图,但如果有人告诉我该怎么做,我会很高兴。
答案 0 :(得分:2)
我认为这是一个GWT错误。
GWT编译器不会读取泛型类型的非静态内部类。
在这种情况下,它知道GenSubEditor
实现Editor
,但无法读取其MajorEvent
参数类型。
尝试GenSubEditor
static
课程。
如果使用任何引用,请记住删除对外部类实例的所有引用。
我会尝试提交有关此问题的错误报告。