我有一个 App Engine GWT 应用程序。在我的客户端代码中,我收到了登录用户的电子邮件,并希望显示它。我通过对服务器的请求收到用户的电子邮件。
问题是 getUserEmail() 方法是在执行onModuleLoad() 方法之后执行的,因此 userEmail-String 将在我想要显示它的地方显示为 null。我已经检查了 getUserEmail() 方法实际上是否返回了正确的信息,如上所述,我的问题是当我得到我想要的信息时。谁能指出我为什么会发生这种情况以及如何解决这个问题?
public String userEmail;
@Override
public void onModuleLoad() {
getUserEmail();
HTML mHTML = new HTML();
mHTML.setHTML("<HTML><BODY> Logged in as " + userEmail + "</BODY></HTML>");
RootPanel.get().add(mHTML);
}
public void getUserEmail(){
requestFactory.getUserEmailRequest().getUserEmail().fire(
new Receiver<String>() {
@Override
public void onSuccess(String result) {
userEmail = result;
}
});
}