@RemoteServiceRelativePath("service/myService")
public interface MyService extends RemoteService {
Future<MyResult> getAsync(String table); // how to do this ?
void getAsync(String table, MyCallBack<MyResult> myCallback); // or this ?
MyResult get(String table); // synchronous
}
注意这不是GWT所需要的Async接口,我实际上希望在我的Java服务中使用异步接口。上面的方法仍然需要转换为与GWT Async兼容。
上面的同步方法将转换如下:
public interface MyServiceAsync {
void get(String table, AsyncCallback<MyResult> callback);
}
1条答案
按热度按时间db2dz4w81#
你的问题令人困惑:也许你需要的是一个简单的Java回调函数,一种允许方法传递函数(或函数引用)作为参数的机制。2当方法被调用时,它就可以执行传递的参数。3下面是一个如何在Java中创建回调函数的例子:
在此示例中,AsyncTask类具有一个名为execute()的方法,该方法将Callback对象作为参数。execute()方法执行一个长时间运行的任务,当任务完成时,它调用Callback对象的onComplete()方法。
在main方法中,创建AsyncTask类的示例,并使用Callback接口的新示例作为参数调用其execute()方法。回调的onComplete()方法被重写以打印“Task completed