Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/gwt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
gwt rpc调用是否总是回调onsuccess或onfail方法?_Gwt_Rpc - Fatal编程技术网

gwt rpc调用是否总是回调onsuccess或onfail方法?

gwt rpc调用是否总是回调onsuccess或onfail方法?,gwt,rpc,Gwt,Rpc,我已经实现了这篇文章中的建议,并在第一次点击后禁用了我的按钮。 我想知道的是,在我的失败和成功方法中,当我的按钮重新启用时,它将始终重新启用。还有什么地方我可以放一些我总是希望在服务器应答时执行的代码,而不是在fail和success方法中重复它我确实认为每次都会调用onSuccess()或onFailure() 至于有一个地方可以放置在服务器得到响应时始终运行的代码,您只需创建一个AsyncCallback,它的onFailure()和onSuccess()方法中包含代码。然后,每次创建Asy

我已经实现了这篇文章中的建议,并在第一次点击后禁用了我的按钮。
我想知道的是,在我的失败和成功方法中,当我的按钮重新启用时,它将始终重新启用。还有什么地方我可以放一些我总是希望在服务器应答时执行的代码,而不是在fail和success方法中重复它

我确实认为每次都会调用
onSuccess()
onFailure()

至于有一个地方可以放置在服务器得到响应时始终运行的代码,您只需创建一个
AsyncCallback
,它的
onFailure()
onSuccess()方法中包含代码。然后,每次创建
AsyncCallback
时,您都可以扩展该
AsyncCallback

公共MyAsyncCallback扩展了AsyncCallback(){ @凌驾 失败时的公共无效(可丢弃){ //做点什么 onResponse() 失败(捕获); } @凌驾 成功时公开作废(T结果){ //做点什么 onResponse() 成功(结果); } 公共响应(){ //默认情况下做某事或什么也不做 } 公共摘要无效失败(可丢弃捕获); 公开摘要作废成功(T结果); };
只要想创建一个
AsyncCallback
就可以使用
MyAsyncCallback

AsyncCallback callback=new MyAsyncCallback(){
@凌驾
public void失败(可丢弃捕获){
//做点什么
}
@凌驾
公共作废成功(T结果){
//做点什么
}  
//如果需要,可以选择重写onResponse()
@凌驾
公共响应(){
//做点什么
}
}

这种方法的问题在于,根据用户执行的按钮或操作,我需要不同的行为。抱歉,我误解了你的回答。哦,我想我误解了。您可以在
异步回调中添加一个方法,例如
public void onResponse(){…}
,然后从
onSuccess()
onFailure()
@MayoMan调用它。我稍微更改了我的实现,以满足您的需要。至少我知道你想做什么。