正如标题所述,当用户拥有全新的安装软件时,他们可能需要等待3-5分钟才能使数据库在后端运行以获得GUI中的数据。所以,在装货的时候,我只会说“请等……”。
在我的GWT代码中,我使用自己的Timer类每2秒调用一次后端代码,以便通过JSON获得后端结果。我的问题是,GWT代码如何知道这是第一次从后端数据库接收非空JSON数据?因为我想在JSON对象不为空时立即刷新页面。
发布于 2014-11-27 08:17:27
如果使用RequestBuilder,下面是发送JSON请求时显示等待消息和接收响应时隐藏消息的简单示例。
import com.google.gwt.http.client.Request;
import com.google.gwt.http.client.RequestBuilder;
import com.google.gwt.http.client.Request;
import com.google.gwt.http.client.RequestCallback;
import com.google.gwt.http.client.Response;
RequestBuilder requestBuilder = new RequestBuilder(RequestBuilder.POST, jsonServiceUrl);
requestBuilder.setHeader("Content-Type", "application/json; charset=utf-8");
RequestCallback jsonCallback = new RequestCallback () {
@Override
public final void onResponseReceived(Request request, Response response) {
hideWaitingMessage();
handleJsonResponse(request, response);
}
@Override
void onError(Request request, Throwable exception) {
hideWaitingMessage();
handleError(response, exception);
}
};
String requestData = null;
displayWaitingMessage();
Request request = requestBuilder.sendRequest(requestData, jsonCallback);https://stackoverflow.com/questions/27153109
复制相似问题