在线程完成工作之前释放facescontext

时间:2012-02-20 09:51:31

标签: java jsf facescontext

我正在从支持bean调用一个线程来创建许多db活动。 我想在上下文中添加消息,  但直到我到达run()方法的末尾,上下文已经被释放。 如何在线程的run()方法中向上下文添加消息, 不依赖豆子?

2 个答案:

答案 0 :(得分:0)

是..你可以用ajax push来做到这一点...... 你可以使用素面或任何你想做的推动......

你应该为通知创建一个bean ..无论何时你想在客户端上通知(如你所愿),都会以某种方式宣布该bean ......想一想:)

通过这种方式,您可以在30分钟后宣布客户已完成他想要的事情......

在最坏的情况下,您可以在javascript中使用“setInterval”函数来定期检查servlet中的消息......

这是a tutorial for commet ..

有关comet here

的更多详情

(是的..用ajax推进是一个很长的路... - 如果你想自己做的话)

欢呼声。

答案 1 :(得分:0)

faces上下文实例通过ThreadLocal绑定到为当前请求提供服务的线程。您可以尝试检索FacesContext实例,并在启动它之前将其作为变量传递给线程。