このアーカイブは同期化されません。 mixi の日記が更新されても、このアーカイブには反映されません。
画面の遷移はすべて終わったので、
パケットフィルタの設定を全て操作できるようになったが、
まだ、フィルタルールの内容を検証する処理を書いていない。
以前作った、フィルタ情報の更新用フォームでは、
FilterInfoForm#validate に検証コードを書いていた。
フィルタ情報の検証は結構単純だったとは言え、
FilterInfoForm#validate のコードは結構長かった。
さて、フィルタルールの内容は結構複雑だ。
フィルタ情報と比べ、プロパティの数がはるかに多いため、
FilterRuleForm#validate に書くとすると、
非常に長いコードになることが想定される。
Struts には、ActionForm を拡張した、
ValidatorForm というクラスが存在する。
このクラスを継承して ActionForm を作成する場合、
検証用の条件を XML ファイルに記述することができ、
エラーメッセージもリソースから取得できるようになる。
そのため、コードを書くことなく検証が可能になる。
検証コードやメッセージをフォームから排除できるので、
全体的に保守性が向上するというメリットがあるのだ。
また、XML ファイルを書き換えるだけで修正できるので、
単純な変更であれば、ソースコードのビルドも不要となる。
そのメリットがある分、ValidatorForm は少し複雑だ。
検証用の設定が全て XML なので、コードを書く代わりに、
その複雑な書式を習得する必要があるからだ。
明日より、少しずつやっていこう。