我正在使用JSF 2.1.8实现一个 Web 应用程序,但我的ui:include标记有问题。我有这个代码
<h:panelGroup id="panelContenido">
<ui:fragment rendered="#{!empty navigationManagerSystem._Navegable}">
<ui:include src="#{navigationManagerSystem._Navegable._IncludePath}" />
</ui:fragment>
<ui:fragment rendered="#{empty navigationManagerSystem._Navegable}">
<ui:include src="/system/navigation/error.xhtml" />
</ui:fragment>
</h:panelGroup>
navigationManagerSystem bean 是 JSF 会话管理的,当这段代码第一次渲染时,它应该显示包含路径内容。如果我在这样的常量中执行此包含,<ui:include /system/home/index.xhtml" />
但如果我将其放入变量中则不起作用,即使我已经看到该变量在屏幕打印之前保持该值。我不知道它是否与持有 /system/home/index.xhtml 页面的 bean 相关,即View Scoped。
无论如何,如果我在页面渲染后进行页面刷新,则 xthml 已正确包含。顺便说一句,我已经简化了要包含的页面,以便没有任何 jstl 标记,因为我知道它们会导致 View Scope 出现问题。
有什么想法吗?