在执行其他方法或代码之前完成RPC调用?

时间:2012-03-19 15:00:52

标签: java gwt gwt-rpc gwt2

我正在GWT中做Web应用程序项目。 我正在使用RPC,它工作正常。

我有4个包装

  1. .client
  2. .client.GUI
  3. .client.control
  4. .shared
  5. .server
  6. 来自.gui.loginpage

    在按钮的onClick方法上,我创建了一个登录类的对象,该对象位于client.control

    RPC onSuccess

    public Boolean setConnection(true)

    但是当我尝试getConnection表单。gui.loginpage时,它显示为null。

    因为回调函数是异步执行的,所以在响应从服务器返回浏览器后调用该函数。

    但是代码的另一部分会立即执行,到时连接仍为null

    我需要一个解决方案或方法或任何逻辑,以便其他功能等到rpc调用完成。

1 个答案:

答案 0 :(得分:2)

听起来您正在尝试同步使用异步通信。进行异步调用后,您不能处理任何其他内容。您希望在Async之后执行的所有逻辑必须进入异步回调函数或Async回调调用的其他函数。只需显示一个微调器,然后完成您在异步响应中所做的操作。