我处理一个用GWT设计的网站,我想检查访问网站之间是否存在互联网连接。如果互联网出现故障,我想提供信息,因为无法连接到服务器或Gmail等处理它。
有人可以建议处理这个问题的最佳方法吗?
答案 0 :(得分:2)
这就是AsyncCallback
上的onFailure(Throwable t)
方法的用途。当RPC因任何原因失败时调用此方法,包括(但不限于)连接丢失。
由于传递到Throwable
的{{1}}可以是任何内容,因此文档中使用的模式为:
onFailure()
具体而言,缺少互联网连接会导致InvocationException
传递给public void onFailure(Throwable caught) {
// Convenient way to find out which exception was thrown.
try {
throw caught;
} catch (IncompatibleRemoteServiceException e) {
// this client is not compatible with the server; cleanup and refresh the
// browser
} catch (InvocationException e) {
// the call didn't complete cleanly
// other Throwables may be caught here...
} catch (Throwable e) {
// last resort -- a very unexpected exception
}
}