在遍历 的源代码时UISelectOne
,我在方法中遇到了以下代码protected void validateValue(FacesContext context, Object value)
:
boolean found = SelectUtils.matchValue(getFacesContext(),
this,
value,
new SelectItemsIterator(context, this),
getConverter());
考虑以下声明:
<h:selectOneRadio value="#{bean.pr}" converter="Conv" required="true" requiredMessage="msg">
<f:selectItems value="#{bean.dates}" />
</h:selectOneRadio>
转换后的值应该等于我在列表中填充的值之一。实际值的类型与预期不同,因此出现验证错误。
问题:为什么转换后的值与验证值不一致?