jsf - 动态用户界面 :include in JSF

标签 jsf jsf-2 facelets

我在 JSF 中有这段代码:

<ui:include rendered="#{paginaMB.pagina eq 'login'}" id="paginaSistema" src="/login.xhtml" />
<ui:include rendered="#{paginaMB.pagina eq 'noticias'}" id="paginaSistema" src="/noticias.xhtml" />

我不知道为什么使用“渲染”两个页面都会显示。

如果我使用此代码:

<ui:include id="paginaSistema" src="#{paginaMB.pagina}.xhtml" />

问题已解决,但我在 login.xhtml 中有一个使用托管 bean 的按钮,但未找到托管 bean,没有当我点击它时就会采取行动。

如何解决这个动态包含问题?

最佳答案

ui:include 没有属性rendered

您应该使用 ui:fragment。

<ui:fragment rendered="#{paginaMB.pagina eq 'login'}">
  <ui:include id="paginaSistema" src="/login.xhtml" />
</ui:fragment>

关于jsf - 动态用户界面 :include in JSF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24534593/

相关文章:

jsf-2 - PrimeFaces 自动完成 3.3.1 不适合我

jsf-2 - 如何在页面重新加载时保持JSF Flash作用域参数?

jsf-2 - 复合组件的 Primefaces 输出标签

jsf - JSF返回带有纯/原始XHTML/XML/EL源的空白/未分析页面,而不是呈现的HTML输出

java - 如何删除 Facelets 中的 HTML 注释?

java - 跳过 jsf 生命周期阶段

jsf - 如何导航到托管bean中的另一个页面?

jsf - Spring Security 3.1.4 taglib 授权/身份验证不适用于 Tomcat 7 上的 JSF 2.2 中的角色层次结构

java - 从JSF页面调用方法疑惑

jsf - 如何生成没有 'id' 和 'autocomplete' 属性的 javax.faces.ViewState 隐藏字段