我正在实现一个客户端-服务器GPS应用程序。客户端是一个J2ME midlet,它通过HTTP/XML将GPS位置发送到Java Webservice (Tomcat servlet)。servlet将位置存储在SQL数据库中。另一个客户端应用程序是一个web浏览器,可以登录并使用Google Maps查看midlet的实际位置。这个客户端是使用GWT编写的。所有这些都部署在相同的Tomcat容器上。现在我想知道如何在手机的浏览器Google Maps中动态更新当前位置,这样客户端就可以看到手机是如何移动的。如何在GWT中做到这一点--我是否应该在GWT客户端创建一个timer对象,并向服务器异步发送HTTP请求以获取实际位置?或者,AJAX/GWT中是否有任何机制来通知客户端(web浏览器)数据更新?
谢谢Dominik
发布于 2010-01-11 21:26:06
在GWT incubator web site about Server Push and how to achieve it with GWT上有一篇详细的文章。摘自文章:
解释了服务器推送,有时被称为'comet',以及如何使用GWT实现这一点。
然后,如果您查看注释,您可以找到感兴趣的相关信息,并以gwt-comet、GWTEventService ...
发布于 2010-01-08 23:21:29
不管所有关于“推送”的讨论,标准的HTTP模型仍然是一个客户端必须向服务器请求更新的模型。
在GWT应用程序中,您应该使用支持良好的Ajax功能来定期(也许是5秒?)从服务器请求细粒度的更新(我猜是轮询)。并使用新获得的信息更新您的地图信息。
发布于 2010-01-12 20:22:13
我同意韩国的看法。
如果您的部署足够小,能够支持每个web浏览器客户端一个永久连接,那么可以使用Server推送/挂起RPC/长轮询或其他任何名称。
https://stackoverflow.com/questions/2028470
复制相似问题