S2Valiを作りながら提供側に必要な技術を学ぶ(4)

最近はもっぱら、Validatorのテストケースを書いています。Validatorはstruts-1.2.9とSAStrutsから移植してきたものですが、念のためテスト書いてます。

すでに自分の案件に投入もしているのでほぼ問題なく動きそうです。
その中で1つ発見した commons-validator の便利な機能が extends。
Javaのクラスを継承するような感覚で、

定義を継承できるんですね。
たぶん知ってる人には当たり前の機能なんですが、意外と便利です。

ところでS2Valiでサポートする戻り値(エラーの戻し方)は String に加えて、ErrorMessageという独自のクラスを配列で返すことにしました。
ErrorMessageは message と args
をプロパティに持ったDTOです。

例えばTeedaを使ってる人は、

  ErrorMessage[] errors = paramValidator.validateHoge(hogeDto);
  for (ErrorMessage error: errors) {
    FacesMessageUtil.addErrorMessage(errors.getMessage(), errors.getArgs());
  }

のように使います。