Java JSF:是否可以为此创建自定义转换器

Java JSF:是否可以为此创建自定义转换器,java,jsf,jsf-2,converter,Java,Jsf,Jsf 2,Converter,我正在使用JSF2.0 btw 我有一个属性Xtype Integer,默认值为0。在我的JSF页面中,我创建了一个组件,如果X为0,我希望它被禁用,否则启用 <h:selectBooleanCheckbox disabled="#{X}"/> 你的问题很含糊。我看不出转换器在这里有什么用处。转换器只是在非标准类型和String类型之间进行转换(EL内置转换(强制)的标准类型是原语、Number和Boolean)。另外,我认为当您说“禁用”和“启用”时,实际上是指“在组件树中呈现”

我正在使用JSF2.0 btw
我有一个属性
X
type Integer,默认值为0。在我的JSF页面中,我创建了一个组件,如果
X
为0,我希望它被禁用,否则启用

<h:selectBooleanCheckbox disabled="#{X}"/>

你的问题很含糊。我看不出转换器在这里有什么用处。转换器只是在非标准类型和
String
类型之间进行转换(EL内置转换(强制)的标准类型是原语、
Number
Boolean
)。另外,我认为当您说“禁用”和“启用”时,实际上是指“在组件树中呈现”

在螺母中,基本上需要


你就不能这么做吗?

我不明白你所说的“实体类型整数”是什么意思,一个属性
X
类型整数,这也是我的意思;一些组件禁用了该属性,使用方式与此相同。不过,我建议为enabled/disabled保留一个布尔变量:
表示HTML表单元素的组件确实具有该属性。但是从问题上看,这并不是那么明显。对不起,我不知道你可以这样做,我最初把它作为
rendered={X}
,希望它的行为像
C
,其中0为假,否则为真。但是它给了我一个错误,说它不能从0转换为布尔类型,所以我想我需要一些自定义的转换器。现在效果很好,非常感谢不客气。有关EL中布尔表达式的其他示例,请参见。
Cannot convert 0 of type class java.lang.Integer to class java.lang.Boolean