页面加载后启动长任务

时间:2012-11-16 10:56:09

标签: ajax jsf-2 primefaces servlet-3.0

我目前正在研究基于jsf的webapp。我正在使用jsf 2.0,servlet 3和primefaces。

这个想法是:

用户登录后,他会获得一个信息面板。此面板显示加载标志。在后端执行一个相当长的DB查询,生成一个他的事务总和。任务完成后,应更新面板以显示结果。

首先我尝试在页面加载后进行ajax调用(使用javascript和f:event触发的隐藏按钮),但页面只加载了一半,任务从未完成(我只做了一个虚拟循环,计数到10) )。

我还尝试使用隐藏的进度条进行解决方法但遇到了同样的问题:完成的侦听器在页面加载后不会立即执行。

我拥有或使用的内容:面板本身由sessionScoped Bean“控制”。这个bean也应该处理很长的任务。最初,面板应显示正常文本(加载标志不必更新,简单的gif就足够了)。在长期任务之后,结果应显示在面板中。

你会怎么解决这个问题,或者你认为我完全错误地解决了这个问题?

提前谢谢。

0 个答案:

没有答案