0

のソース コードをたどっていくと、メソッド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>

変換された値は、リストに入力した値のいずれかと等しくなるはずです。実際の値の型が予想と異なるため、検証エラーが発生します。

質問:変換された値が検証された値と一致しないのはなぜですか?

4

0 に答える 0