我正在使用Richfaces 4和Mojarra 2.0.4。所以我会很高兴,如果答案是特定于Richfaces 4框架:)JSF页面完成渲染后加载数据
我知道JSF组件在服务器端处理。我的一些页面实际上是以数据为中心的。因此,当我加载该页面(例如:在switchTax ajax的richTab中)时,我的bean需要很长时间才能执行标记为@PostConstruct
的方法来执行和获取数据。因此用户点击标签页头和实际页面渲染之间的时间间隔非常大,这是一种非常糟糕的用户体验。我已经为页面中的dataTables实现了延迟加载,但仍然不会优化我的页面加载时间,因为@PostConstruct
仍然存在。
是否有反正我可以先加载页面,然后用ajax获取数据并更新页面?这种加载时间是赞赏user.Any帮助:)
PS真的很烦:我想用用a4j:function
宣布rich:tab
的oncomplete
和onbeforedomupdate
客户端事件和呼叫AJAX功能。但似乎这些事件在之前被触发页面实际切换。
感谢您的回答!然而,如果我们要使用onload事件,我将不得不根据哪个标签被加载来检查哪个bean调用哪个方法。右?但你的回答只是给了我一个主意!我可以在rich:tab上使用oncomplete和setTimeout!将尝试并回来。 :) – Nikhil 2011-04-29 07:41:41
@Nikhil - 是的,这是真的,否则你将不得不同时加载所有的数据,祝你好运:) – niksvp 2011-04-29 07:47:25
嗯,刚刚发现第一个选项卡的oncomplete方法没有得到执行!如果我切换到其他选项卡并返回到第一个,则只有第一个选项卡的未完成执行。所以我不能在第一个标签中使用这个策略。 :| – Nikhil 2011-04-29 10:18:50