在RPC期间添加进度栏

时间:2010-07-21 16:29:08

标签: gwt

我想在gwt-rpc调用期间添加一个进度条,显示完成任务的百分比。任何人都可以帮我处理一段相同的代码?
此外,我从战争目录加载视频到我的客户端,他们需要一段时间。因此,如果我尝试播放他们有时浏览器没有响应(可能是因为整个部分没有加载)。有一种方法来确定(并因此显示用户)视频完全加载?

2 个答案:

答案 0 :(得分:3)

gwt-incubator project中有一个进度条小部件。但是,你的大多数GWT-RPC调用应该非常快,所以我无法想象进度条是否有时间出现。此外,我不知道如何获得GWT-RPC调用的进度,您必须在服务器端手动编写该功能。

例如,如果您正在运行较长的作业,则可以创建另一个每30秒调用一次的GWT-RPC调用,以查找正在运行的作业的状态并相应地更新进度条。

但是,对于常规的GWT-RPC调用,最好的选择是某种“加载...”通知。它不应该存在很长时间并且易于编码。

关于你的第二个问题,这不是显示视频的最佳方式。当您只是将视频文件转储给用户时,用户将需要手头拥有该视频编解码器,并将被迫等到视频完全下载完毕。显示视频的更好方法是:

  1. 某种能够播放视频的Flash播放器。
  2. HTML 5标记,仅适用于现代浏览器。
  3. 希望有所帮助。

答案 1 :(得分:1)

如果您的每个操作始终只有一个RPC调用,则使用进度条不是一个好主意。因为你必须在服务器端做额外的努力,这比你想要做的要复杂得多。

如果一个操作上有多个RPC,则可以使用进度条。例如,如果您有4个RPC调用,则可以在每个调用完成后向进度条添加25%。这也将允许您在所有呼叫成功完成后锁定屏幕,并根据当前百分比和百分比的相关描述明确知道客户端哪个RPC呼叫失败。