我正在使用GWT2.3和GWTP。现在在这个应用程序中,我需要从非演示者类进行服务器端调用(因此id没有调度异步实例)。 这是我的班级
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始终为null。我从应该初始化的位置开始,以便我可以进行服务器端调用。如果还有其他方式,请告诉我。 提前致谢。
答案 0 :(得分:2)
您需要注入NameTokenHandler
,因此您的调度员也会被注入。
public class C {
private NameTokenHandler handler;
@Inject
public C(NameTokenHandler handler) {
this.handler = handler;
}
}
这样处理程序将被注入C
类,您的调度程序也将被注入NameTokenHandler
。顺便说一句,您可能需要在NameTokenHandler
中使用相同模式(DispatchAsync
作为参数)的构造函数。