OK、GWTには同期呼び出しはありません。
しかし、私がこのようなものを持っている場合:
class XXX {
Config c=new Config();
c.doSomething();
}
およびクラスConfig
public class Config {
private static HashMap<String,String> map;
public Config(){
final ServerProxyAsync serverProxy= GWT.create(ServerProxy.class);
serverProxy.getParameters(new AsyncCallback<HashMap<String,String>>() {
@Override
public void onFailure(Throwable caught) {
System.out.println("getParameters: FAILED!");
map=null;
}
@Override
public void onSuccess(HashMap<String, String> result) {
System.out.println("getParameters: OK!");
map=result;
// RETURN NOW!!!!
}
});
}
doSomething()
マップが初期化される前にメソッドが呼び出されることがあるため、非同期呼び出しが終了しない場合は実行できません。方法はありますか?