java - GWT - 方法的同步返回

标签 java gwt rpc gwt-rpc synchronous

好的,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(),因为有时会在 map 初始化之前调用该方法。 有办法吗?

最佳答案

怎么样doSomething()onSuccess()

您不能使用synchronous call in GWT.即使你以某种方式做到了,但这不是一个好的做法

当您需要这个时,您必须执行 onSuccess(); 中的内容您的 RPC 调用。

所以,最好的想法是简单地使用异步方法并通过提供的回调继续执行。您最终将获得更好的用户体验,以及更专业的外观
应用程序。

关于java - GWT - 方法的同步返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14920355/

相关文章:

java - Android volley future 请求超时

html - 带有列表项的 GWT 无序列表

java - 为许多按钮实现 ClickHandler 的最佳实践

java - 在 Play Framework 上连接到 as400 JDBC

java - URL 太长时被截断

java - 什么是 GWT 开发者插件协议(protocol)

java - GWT sinkEvent 功能如何工作?

python - 如何在 Volttron 中使用 RPC

python - Bitcoinrpc 连接到远程服务器

Java 异常 java.lang.AbstractMethodError