如何在 gwt 中不分派异步实例的情况下进行服务器调用
Posted
技术标签:
【中文标题】如何在 gwt 中不分派异步实例的情况下进行服务器调用【英文标题】:How to make a server call with out dispatch async instance in gwt 【发布时间】:2011-09-08 07:46:10 【问题描述】:我正在使用 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 始终为空。我从应该初始化的地方得到,以便我可以进行服务器端调用。如果还有其他方法,请告诉我。 提前致谢。
【问题讨论】:
你如何创建类NameTokenHandler
?
@sydney 只是通过实现 ValueChangeHandler.... 如上所述
您是否调用new NameTokenHandler()
来创建对象?
是的,我已将此添加到历史记录中。
【参考方案1】:
你需要注入NameTokenHandler
,所以你的dispatcher也会被注入。
public class C
private NameTokenHandler handler;
@Inject
public C(NameTokenHandler handler)
this.handler = handler;
这样处理程序将被注入到C
类中,您的调度程序也将被注入到NameTokenHandler
中。顺便说一句,您可能需要在 NameTokenHandler
中有一个遵循相同模式的构造函数(DispatchAsync
作为参数)。
【讨论】:
以上是关于如何在 gwt 中不分派异步实例的情况下进行服务器调用的主要内容,如果未能解决你的问题,请参考以下文章