我有一个GWT项目,其中我在客户端软件包中编写了一个Web界面,以及连接到服务器软件包中的远程服务器的代码。界面向用户显示某些参数,他/她必须选择它们并向远程服务器进行查询。
我已经使用RPC调用将用户选择的参数传递给服务器包,但是我想知道是否可以进行反向操作,因为我想绘制从服务器检索到的数据嵌入式谷歌地图(检索到的数据是地理参考),所有这些绘图都是在带有纯GWT类的客户端包中完成的。
你怎么看?可能吗?任何的想法?我是否必须在客户端绘制地理参考数据?感谢所有人。
答案 0 :(得分:0)
你可以使用jwebscoket或websocket来做RRPC(反向RPC)。更多信息可以在http://jwebsocket.org/获得。
答案 1 :(得分:0)
我在这个论坛上看过:http://markmail.org/message/ksrbkwbhlbgq44yx以下评论......你怎么看?
'反向'RPC调用GWT客户端 是不可能的 - 你能做什么 是提供刷新按钮还是有 您的客户端定期轮询服务器 获取最新数据的时间间隔。
感谢您的帮助
答案 2 :(得分:0)
您正在寻找的是服务器推送框架/库。其中一个是彗星。 Comet是一种Web应用程序模型,其中长期持有的HTTP请求允许Web服务器将数据推送到浏览器,而浏览器不会明确请求它。 GWT有很多库,但这里有几个:
http://code.google.com/p/gwteventservice/
http://code.google.com/p/gwt-comet/
http://code.google.com/p/rocket-gwt/wiki/Comet
http://www.jboss.org/errai
http://code.google.com/p/dwr4gwt/
说明:
http://www.jroller.com/masini/entry/a_comet_implementation_for_google
http://wintermuteblog.blogspot.com/2010/01/websphere-gwt-comet.html
答案 3 :(得分:0)
如果您希望服务器代码启动RPC以向客户端发送内容,那么您正在寻找服务器推送或WebSockets。
一个可能对您有用的更简单的替代方法是让客户端轮询服务器。鉴于这项服务:
public interface MapParamsService extends RemoteService {
MapParams getMapParams();
}
你可以让客户端每隔5秒调用一次getMapParams(),直到它返回非null值。
答案 4 :(得分:0)
我得到你问题的每一部分,但你可以在你的rpc方法中使用返回类型。并且有一个共享包,你可以为要从服务器返回的用户定义数据类型创建一个模型类。