2012-04-19 98 views
1

我们正在从JSP VDL迁移到Facelets VDL。我们有条件的渲染标签需要移植到Facelets。由于条件呈现中的& &符号,.xhtml编译失败。有关如何处理这个问题的任何想法?Richfaces4.2条件呈现问题

<a4j:outputPanel styleClass="myclass" layout="block" 
         rendered="#{myBean.iscorrect && anotherBean.isCorrect}"> 
render something here ... 

</a4j:outputPanel> 

谢谢你的时间。

回答

0

使用and而不是&&。它也立即更自我记录。

<a4j:outputPanel styleClass="myclass" layout="block" 
    rendered="#{myBean.iscorrect and anotherBean.isCorrect}"> 

的原因是因为Facelets的是一种基于XML的视图技术和&在XML中是特殊字符代表一个实体的开始。你得到的确切的Facelets编译错误消息也应该暗示了一些。其他需要注意的特殊字符分别为<>,应将EL分别替换为ltgt

此问题与RichFaces无关。在标准JSF标签中这样做会有同样的问题。

顺便说一句,你真的有一个isIscorrect() getter方法吗?如果您有private boolean correct;public boolean isCorrect()方法并且评估为rendered="#{myBean.correct and anotherBean.correct}",那么对我来说更有意义。

+0

嗨BalusC,谢谢你的回答。不,我没有isCorrect()方法。只是为了表示布尔响应,我把它命名为正确的。 – kosa 2012-04-19 18:05:31