检查是否离线使用GWT



我使用与GWT集成的offline .js来检查应用程序是否离线(即服务器关闭)。

库工作得很好,我现在的问题是如何在开发模式下测试它,如果我手动关闭jetty服务器,应用程序也会下降。与使用Tomcat或JBoss部署时不同。是否有办法在开发模式中进行测试?

不使用自定义js库,为什么不添加客户端心跳检查器?然后,来自服务的RPC调用将返回一个InvocationException,您可以通过创建自定义AsyncCallback抽象类来检查它。像这样:

public abstract class ResponsiveAsyncCallback<T> implements AsyncCallback<T> {
    public void onFailure(Throwable caught) {
        if(caught instanceof InvocationException) {
            // Failed to connect to the server
            // Do what you like here, maybe create an event
        }
    }
}

现在您只需要确保在将来扩展其功能时调用super.onFailure()。

编译应用程序并删除gwt。从URL获取服务器查询参数。编译后的GWT应用程序继续在浏览器中执行,您可以关闭开发模式服务器并重新启动它,以查看应用程序的效果。