我有一个 JSF 复合组件,它在接口部分有一个 EL 表达式,代码片段如下。
<cc:interface>
<cc:attribute name="label" type="java.lang.String"/>
<cc:attribute name="labelRendered" default="#{cc.attrs.label ne null}"/>
</cc:interface>
<cc:implementation>
<h:outputText rendered="#{cc.attrs.labelRendered}" value="#{cc.attrs.label}"/>
</cc:implementation>
现在我的问题是 "default="#{cc.attrs.label ne null}" 给出了一个错误。
java.lang.IllegalArgumentException: Cannot convert /resources/cc/label.xhtml @20,85 default="#{cc.attrs.label != null}" of type class com.sun.faces.facelets.el.TagValueExpression to class java.lang.Boolean
我正在使用 JSF 2.0.4、EL 2.1、WAS 7