Java 如何在GWT中使用AsyncCallback调用GET方法
我有一个doGet(stringurl,final-AsyncCallback)方法,用于使用REST函数从服务器检索JSON,但我不知道如何在onModuleLoad()中调用它。代码是:Java 如何在GWT中使用AsyncCallback调用GET方法,java,json,rest,gwt,Java,Json,Rest,Gwt,我有一个doGet(stringurl,final-AsyncCallback)方法,用于使用REST函数从服务器检索JSON,但我不知道如何在onModuleLoad()中调用它。代码是: public void doGet(String url, final AsyncCallback<JavaScriptObject> callback) { RequestBuilder builder = new RequestBuilder(RequestBuilder.GET,
public void doGet(String url, final AsyncCallback<JavaScriptObject> callback) {
RequestBuilder builder = new RequestBuilder(RequestBuilder.GET, url);
try {
builder.sendRequest(null, new RequestCallback() {
public void onError(Request request, Throwable caught) {
callback.onFailure(caught);
}
public void onResponseReceived(Request request, Response response) {
if(response.getStatusCode() == STATUS_CODE_OK) {
try {
callback.onSuccess(JsonUtils.safeEval(response.getText()));
} catch(IllegalArgumentException iax) {
callback.onFailure(iax);
}
}
else {
callback.onFailure(new Exception("Bad return code..."));
}
}
});
} catch(RequestException e) {
callback.onFailure(e);
}
}
我需要AsyncCallback,因为我想在另一个页面或文本框中显示来自数据库的JSON。
欢迎对每一个代码进行改进!
谢谢大家! 您可以这样打电话:
doGet("your url", new AsyncCallback<JavaScriptObject>() {
@Override
public void onSuccess(JavaScriptObject result) {
// process the result
}
@Override
public void onFailure(Throwable caught) {
// process when error
}
});
doGet(“你的url”,新的AsyncCallback(){
@凌驾
成功时的公共void(JavaScriptObject结果){
//处理结果
}
@凌驾
失败时的公共无效(可丢弃){
//出错时处理
}
});
您可以这样打电话:
doGet("your url", new AsyncCallback<JavaScriptObject>() {
@Override
public void onSuccess(JavaScriptObject result) {
// process the result
}
@Override
public void onFailure(Throwable caught) {
// process when error
}
});
doGet(“你的url”,新的AsyncCallback(){
@凌驾
成功时的公共void(JavaScriptObject结果){
//处理结果
}
@凌驾
失败时的公共无效(可丢弃){
//出错时处理
}
});
这里是您所有问题的详细答案:)因此我需要创建几个类:(没有“简单快速的方法”使用GUI在服务器和客户端之间建立连接,对吗?这里是您所有问题的详细答案:)因此我需要创建几个类:(没有“简单快速的方法”使用GUI在服务器和客户端之间建立连接,对吗?