public class WordValidator2 implements Validator, StateHolder { /** バリデータID(JSF 設定ファイルと同じ値) */ public static final String VALIDATOR_ID = "to.msn.wings.jsf.custom. WordValidator2";
private String words = null; // 合言葉リスト
public void setWords(String words){ this.words = words; }
if ( context == null ) throw new NullPointerException( "context is null" ); if ( component == null ) throw new NullPointerException( "component is null" ); if ( value == null ) { return; } if ( words == null || words.length() == 0 ){ return; }
String[] wordArray = words.split( "," );
// 検証処理 for (int i = 0; i < wordArray.length; i++) { if ( wordArray[i].equals( value ) ){ return; } }
throw new ValidatorException( new FacesMessage( "合言葉が違います。" ) ); }
public void restoreState(FacesContext context, Object state) { words = (String) state; } public Object saveState(FacesContext context) { return words; } }