用于监视GWT中长时间运行的任务的进度条

用于监视GWT中长时间运行的任务的进度条,gwt,progress-bar,asyncfileupload,ajax-push,Gwt,Progress Bar,Asyncfileupload,Ajax Push,我需要写一个进度条来监控生成一些非常大的PDF文件的进度。我们知道如何在服务器端非常准确地监视生成PDF文件的进度,但无法找到从浏览器监视状态的好方法 一些建议 当servlet/gwt rpc请求发生时,为作业创建guid 启动作业,将guid返回给客户端。每x秒查询一次 另一个具有该较早返回guid的gwt rpc方法。作为进步 发生在运行缓慢的进程上,我们将状态推送到会话 具有该guid名称的变量。当我们达到100%下载 从动态确定的位置发送文件,并发送实际文件 通过普通servlet连接

我需要写一个进度条来监控生成一些非常大的PDF文件的进度。我们知道如何在服务器端非常准确地监视生成PDF文件的进度,但无法找到从浏览器监视状态的好方法

一些建议

  • 当servlet/gwt rpc请求发生时,为作业创建guid 启动作业,将guid返回给客户端。每x秒查询一次 另一个具有该较早返回guid的gwt rpc方法。作为进步 发生在运行缓慢的进程上,我们将状态推送到会话 具有该guid名称的变量。当我们达到100%下载 从动态确定的位置发送文件,并发送实际文件 通过普通servlet连接到浏览器
  • 使用ajax推送进行长时间的 正在运行http连接会即时推送状态
  • 有人对如何设计一个健壮的进度条有什么建议吗


    对如何处理这个问题有什么建议吗?就UI而言,我可能会编写自己的小部件,因为gwt孵化器项目的状态栏(以及整个项目)已被弃用。

    我们有类似的场景。我们在服务器上运行多个作业,在执行期间,我们使用作业id轮询服务器。作业完成后,我们将GUI状态更新为“完成”。我们使用RequestFactory,因为我们将作业状态存储在数据库中。它工作得很好

    我们有类似的情况。我们在服务器上运行多个作业,在执行期间,我们使用作业id轮询服务器。作业完成后,我们将GUI状态更新为“完成”。我们使用RequestFactory,因为我们将作业状态存储在数据库中。它工作得很好