相关疑难解决方法(0)

何时使用<ui:include>,标记文件,复合组件和/或自定义组件?

我最近开始使用带有Facelets的JSF 2.0,并且对于了解<ui:include>Facelets 1.x提供的现有和其他模板技术的新复合组件感到困惑.

这些方法有什么区别?从功能上看,它们似乎提供了相同的:<ui:param>vs <cc:attribute>,<ui:insert>+ <ui:define>vs标记文件,重用现有模板.除了复合组件的语法和清晰的接口规范之外还有什么吗?性能会有所不同?

facelets tagfile custom-component composite-component jsf-2

95
推荐指数
1
解决办法
5万
查看次数

有条件地显示JSF组件

首先,我是Java EE的新手,来自强大的ASP .NET开发背景.我已经浏览了网络,我可能会错过这个,但似乎没有关于如何将支持bean类连接到JSF组件的简单直接的教程.

一个很好的例子是这样的,目前我正在尝试创建一个JSF页面,其中有一组链接作为菜单栏和一组表单.我打算做的是,当点击一个链接时,将呈现一个特定的表单.

在ASP.NET中,我可以轻松检索元素,然后将属性设置为可显示.我想知道在JSF中是否有简单的方法(哎呀,甚至任何方式).

表单已经在页面中,只需在单击特定链接时将"render"属性设置为true即可.

jsf components conditional-rendering

76
推荐指数
2
解决办法
16万
查看次数

c:选择不在JSF中工作

我有三个值,我希望在前两个值的情况下渲染一个组件,为第三个值渲染另一个组件

下面,我有我的页面:

page.xhtml

<ui:repeat value=#{bean.value} var="data">
<c:choose>
 <c:when  test="#{data.thirdValue == 'content'}">
   <h:outputText value="Wrong value"/>
 </c:when>
 <c:otherwise>
  Correct!
 </c:otherwise>
</c:choose>
</ui:repeat>
Run Code Online (Sandbox Code Playgroud)

这就是我的页面定义方式.我还添加了以下命名空间:xmlns:c="http://java.sun.com/jsp/jstl/core.

我测试了测试中定义的值是否<c:when>返回"true"或"false"并且确实如此.

我的问题是<c:when>永远不会评估.<c:otherwise>始终呈现该值.我错过了什么吗?是否因为条件渲染在内部<ui:repeat>而没有评估when?

任何帮助将非常感谢.提前致谢

jstl primefaces jsf-2

8
推荐指数
2
解决办法
1万
查看次数