我正在尝试使用ICEfaces 2.0,glassfish 3.0.1,JMS构建一个示例应用程序。 我创建了一个JMS Topic发布者,它是一个桌面应用程序,并向TOPIC发布了一些数据,另一方面,我有一个Web应用程序,用户在这个应用程序中订阅该TOPIC以接收来自它的消息。为了异步应用页面更新,我使用的是ICEFaces PushRenderer。 PushRenderer在托管Bean实例调用PushRenderer.render()的场景中工作,但在从onMessage()函数调用时失败,该函数是JMS消息的监听器。推送呈现失败,说“当前线程没有FacesContext与它关联。现在为了使这项工作,我如何从托管bean实例线程执行对PushRenderer.render的调用或者当onMessage()是另一种使PushRenderer.render工作的方法被TOPIC出版商召集。 请帮忙解决这个问题。我正在寻找其他方法来完成这项工作。同样的过程也适用于ICEFaces 1.8.2 SessionRenderer.render,但它与上面提到的PushRenderer.render失败。
答案 0 :(得分:0)
您可以尝试使用ondemand渲染器,例如:
renderManager.getOnDemandRenderer(identifier).requestRender();