2

我正在使用 GWT2.3 和 GWTP。现在在这个应用程序中,我需要从非演示者类进行服务器端调用(所以没有调度异步实例)。这是我的课

public class NameTokenHandler implements ValueChangeHandler<String> {
    @Inject
    DispatchAsync dispatchAsync;
    @Override
    public void onValueChange(ValueChangeEvent<String> event) {
        if (event != null) {
            String nameToken = event.getValue();

            if(dispatchAsync!=null)
            {
                System.out.println("yes");
            } else {
                System.out.println("No");
            }

            History.newItem(nameToken);
        }
    }
}

这里 dispatchAsync 始终为空。我从应该初始化的地方得到,以便我可以进行服务器端调用。如果还有其他方法,请告诉我。提前致谢。

4

1 回答 1

2

您需要注入NameTokenHandler,因此您的调度程序也将被注入。

public class C {

  private NameTokenHandler handler;

  @Inject
  public C(NameTokenHandler handler) {
    this.handler = handler;
  }

}

这样,处理程序将被注入到C类中,并且您的调度程序也将被注入到NameTokenHandler. 顺便说一句,您可能需要一个NameTokenHandler遵循相同模式的构造函数(DispatchAsync作为参数)。

于 2011-09-12T13:37:53.460 回答