我们有一个页面,其中主要内容区域由 控制ui:includes
,基本上我们有h:panelGroup
一个rendered
条件和ui:include
它的内部。
像这样:
<h:panelGroup rendered="#{bean.page.id eq bean.page1ID}">
<ui:include src="page.xhtml"/>
</h:panelGroup>
我们有大约 10 个。每个页面都非常复杂,有一些自己的 bean。我们使用渲染技巧而不是动态ui:include
的原因是因为存在一个错误,其中在@ViewScoped
外部使用的 bean 在ui:include
内部重新实例化,ui:include
从而导致各种问题。
每当我们执行某个动作时,都需要几秒钟(通常是 7 到 15 秒)才能执行该动作。例如,当我们更改bean.page
属性并请求渲染时。即使我们做一些简单的事情,比如保存一个几乎不涉及其他任何东西的值,它也真的很慢。如果我删除除一个之外的所有内容h:panelGroups
,ui:includes
则该站点非常快(1 到 2 秒响应)。据我所知,ui:includes
他们使用的所有页面和 bean 都被实例化了。
我们能做些什么来加快这个速度?我们在树脂 4.0.32 和 primefaces 3.5 上使用 mojarra 2.1.13。
谢谢。