将视图绑定到演示者时出错



我在运行 GWT 应用程序时收到此错误:

java.lang.AssertionError: This UIObject's element is not set; you may be missing a call to either Composite.initWidget() or UIObject.setElement()
public class MainView extends Composite implements HeaderPresenter.MyView {
  // Code omitted
}

Gin 客户端模块中.java配置() 函数我有以下代码:

bindPresenter(HeaderPresenter.class, HeaderPresenter.MyView.class,
                MainView.class, HeaderPresenter.MyProxy.class);

在视图类中,initWidget() 被正确调用并与小部件一起传递,什么可能导致错误?

未调用UIObject.setElement时会发生此错误。如果使用非 null 小部件调用Composite.initWidget,请确保该小部件正确设置了自己的元素。如果这是一个标准的 GWT 小部件,它应该这样做,否则传递给 initWidget 的小部件可能没有正确设置。

这就是

我创建稍后将在视图中使用Composite的方式。

public class MyCustomBox extends Composite {
    private static MyCustomBoxUiBinder uiBinder = GWT.create(MyCustomBoxUiBinder.class);
    interface MyCustomBoxUiBinder extends UiBinder<Widget, MyCustomBox> {
    }
    public MyCustomBox() {
        initWidget(uiBinder.createAndBindUi(this));
    }
}

相关内容

  • 没有找到相关文章

最新更新