You don't want to block the UI with a while loop. Instead, consider creating an interface with a single method:
public interface LoginCallback { void onLogin(int feedback); } Then, alter your loginUser method to return void and take as an addition parameter a LoginCallback: public void loginUser(String user, String passwd, boolean override, final LoginCallback cb) { XGENgwt.loginUser(user, passwd, override, new AsyncCallback() { public void onSuccess(Object result) { cb.onLogin(Integer.parseInt(result.toString())); } public void onFailure (Throwable caught) { Window.alert("Unable to login: "+caught.toString()); } }); logToServer("Bei der Zuweisung: "+loginFeedback); } You could also call the onLogin from the onFailure if you wanted to. Or create an addition method in your LoginCallback to call from the onFailure. Take the code that currently follows the call to your loginUser method and move it into the onLogin method of an instance of LoginCallback that gets passed to the new loginUser method. Think Async! ;-) HTH, Chad On Jun 8, 8:07 am, uwi_u <uwe.chris...@gad.de> wrote: > Hi there, > > I'm currently writing an Application with GWT, and am Stuck at one > position: > > When I call my RPC, the value which is to be returned, will be passed > to an global variable. Unfortunately, the returning of this global > variable out of the method happens before the onSuccess comes > back..... > > the only way to block which I see is to do a while until " > loginFeedback < 0" > > Heres some Code (loginFeedback shall get a value from 0 to 2): > > public int loginUser(String user, String passwd, boolean override){ > loginFeedback = -1; > XGENgwt.loginUser(user, passwd, override, new AsyncCallback(){ > public void onSuccess(Object result){ > loginFeedback = Integer.parseInt(result.toString()); > } > public void onFailure (Throwable caught){ > Window.alert("Unable to login: "+caught.toString()); > } > }); > logToServer("Bei der Zuweisung: "+loginFeedback); > return loginFeedback; > } > > Is there a better way? I hope so.... -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to google-web-tool...@googlegroups.com. To unsubscribe from this group, send email to google-web-toolkit+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.