1

JSF Bean Validationで文字列値を変換するために、どのコンバーターが使用されますか?使用する数値<f:convertNumber>や日付の場合と同様に、を使用します<f:convertDataTime>。私のコードスニペストは次のとおりです。JSFページ:

<h:inputText id="Name" label="Name" value="#{employee.eName}"/>
<h:message for="Name" styleClass="errorMessages"/> 

Beanクラス:

public class Employee implements Serializable{
    @NotNull @Size(min = 3, max = 30)
    String eName;
}
4

1 に答える 1

3

Stringデフォルトのコンバーターはありません。リクエストパラメータはStringすでに.

でカスタム コンバーターをフックする場合はString

@FacesConverter(forClass=String.class)
public class StringConverter implements Converter {

    // ...

}

これについて私が見た唯一の使用例はnull、空の文字列ではなく に設定することですが、次のコンテキスト パラメータを に設定することによっても実現できますweb.xml

<context-param>
    <param-name>javax.faces.INTERPRET_EMPTY_STRING_SUBMITTED_VALUES_AS_NULL</param-name>
    <param-value>true</param-value>
</context-param>

このようにして@NotNull、空の文字列を送信すると、注釈がトリガーされます。それ以外の場合は、代わりに Hibernate 固有を使用する必要があります@NotBlank

こちらもご覧ください

于 2011-05-06T12:12:33.523 に答える