You have to convert your code to use a callback:

Instead of:

void onClick() {
  myObject.doSomethingAsync(xyz);
  myObject.getConnection();
  //additional code
}

convert it to:

void onClick() {
  myObject.doSomethingAsync(xyz, new Callback() {
    void onSuccess() {
      myObject.getConnection();
      //additional code
    }
  });
}

void doSomethingAsync(Object o, Callback cb) {
  serverService.rpcMethod(o, new AsyncCallback<Object> {
    void onSuccess(Object result) {
      setConnection(true);
      cb.onSuccess(); //notify caller via its callback
    }
  }
}

Alternatively you can use two events (one event results in execution of the 
async method and the second one will be fired when the async request has 
been finished).


-- J.



Am Montag, 19. März 2012 16:30:58 UTC+1 schrieb learning coding:
>
> HI all
>  
> I am doing web application Project in GWT. I am using RPC, which is 
> working fine.
>
> I have 4 packeages 
>
>    1. .client 
>    2. .client.GUI 
>    3. .client.control 
>    4. .shared 
>    5. .server
>
> From .gui.loginpage
>
> On onClickmethod of a button I make a object of Login Class which is in 
> client.control
>
> onSuccess of RPC public Boolean setConnection(true)
>
> but when i try to getConnectionform .gui.loginpage its show me null.
>
> because the call back function is executed asynchronously, the function is 
> invoked after the response comes to the browser from the server. 
>
> But the other part of the code is executed immediately by which time 
> connection is still null.
> *I need a solution or a method or any logic so that other function waits 
> till the rpc call is complete.*
> ** 
> *Thanks*
>  
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google Web Toolkit" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/google-web-toolkit/-/JF6fL4gXVSUJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-web-toolkit?hl=en.

Reply via email to