在JSF的托管bean中强制使用getter和setter吗?

问题描述:

我有一个JSF组件,它是从托管bean的getter getProperty()初始化的。在托管bean中是否还必须有一个setter setProperty()在JSF的托管bean中强制使用getter和setter吗?

+0

这是用于绑定属性吗? – McDowell

+0

该组件的值是在运行时计算的。对于getProperty,我没有以MB为单位的属性属性。 – jj88

这取决于。

一些属性绑定必须是可读写的。例如,如果绑定实现EditableValueHolder的组件的值。其他属性可以是只读的。

如果您使用binding属性动态创建组件实例,则该属性也必须按照规范中定义的合同进行读写。

+0

值与组件上的值属性链接。组件是f:param所以不可编辑,我不使用绑定链接到组件上的值,所以我认为没有setter就是正确的。 – jj88

不,不是强制性的。除非您希望能够以允许更改其值的方式绑定属性。

EG。如果您想要在数据表中显示对象列表,则可能不需要设置器。如果你将一个字符串属性绑定到一个textInput,那么你将需要一个setter。