0

私は JSF を使用しており、登録 Web ページを作成しています。バリデーターを使用して、ユーザーが選択したユーザー名が既に存在するかどうかを確認しようとしています。しかし、データベースにクエリを実行してユーザー名を確認する方法がわかりません。EJB インジェクションを試してみましたが、うまくいきません。null ポインター例外が発生しました。

@FacesValidator("usernameUnicityValidator")
public class UsernameUnicityValidator implements Validator {
    @EJB
    private ArticleFacadeLocal articleFacade;

    @Override
    public void validate(FacesContext context, UIComponent component, Object value) throws ValidatorException {
        if (value==null) {
            FacesMessage message = new FacesMessage("The username cannot be empty");
            message.setSeverity(FacesMessage.SEVERITY_FATAL);
            throw new ValidatorException(message);
        }
        if (userFacade.findByUsername((String)value)) {
            FacesMessage message = new FacesMessage("Username already exist");
            throw new ValidatorException(message);
       }
    }
}
4

1 に答える 1