问题描述
如何维护dwr的长连接,如果重启tomcat不想刷新页面,如何建立与dwr的长连接呢? 问题补充:aronlulu 写道
解决方案
引用怎么检查dwr的长连接是否断开啊? 直接默认一段时间没响应就算断开啊。
解决方案二:
引用我现在 准备用js轮询服务器,但是在tomcat关闭的时候没有想到判断当前连接已经断开的方式,js轮询服务器采用的是ajax的方式,server端不能回应(tomcat关闭时),导致ajax请求有去无返,也就无法取得连接状态。 ajax不是有timeout的设置么,超时了调回调函数就可以了啊,在回调函数里面继续,直到有响应为止。
解决方案三:
dwr的comet长连接有三种方式,不知道你用的是哪种,如果用的是轮询方式,那就js轮询。如果是服务端推消息的方式,按照我的理解:重启tomcat后,所有连接都丢失了,获取不到连接信息,服务器就无能为力了,只能客户端操作某个按钮重新触发。因为服务端是不可能反向去连客户端建立连接的,除非客户端建立个监听端口。你可以js轮询服务器,当发现服务器没连接即重启的时候,页面给个模态框提示,当用户点击这个模态框的时候,触发js去重新建立连接。
解决方案四:
客户端js定时轮询调用即可。
时间: 2024-09-20 07:42:59