我正在使用JSF 2.0 btw
我有一个属性X
类型Integer,它的默认值为0.在我的JSF页面中,我创建了一个组件,如果X
为0,我希望它被禁用,否则启用。
<h:selectBooleanCheckbox disabled="#{X}"/>
我收到了这个错误
Cannot convert 0 of type class java.lang.Integer to class java.lang.Boolean
答案 0 :(得分:6)
你的问题很模糊,含糊不清。我不知道转换器在这里有用。转换器仅仅是在非标准类型和String
类型之间进行转换(EL内置转换(强制)的标准类型是基元,Number
和Boolean
)。另外,我认为当你说“禁用”和“启用”时,你实际上意味着“在组件树中渲染”。
在坚果中,你基本上想要<h:someComponent rendered="#{X != 0}" />
。
你不能这样做吗?