Strutsの入力検証 formクラスによる入力検証

最近ひとつの仕事の最終段階に入っており、追い込みでほとんど自分のための時間は作れておりません…。その中でも少しずつですが、本を読んだり、プログラムを作ったりしています。


今日はStrutsの入力検証機構について書きます。Strutsは世に出てからずいぶん時間が立っており、Struts2も発表されている事から、私がいまいろいろ触っているStruts1はすでに枯れた(成熟しきった)フレームワークといえます。


以前購入した以下の本を読みながら、作業日報アプリケーションを用いていろいろテストをしています。

その中で、Strutsの入力検証について覚えることができたので、報告します。


大雑把に書くと以下の図のオレンジ色の表記のようになります。


書かなくてはならない項目は以下の3つです。

  1. struts-config.xmlのaction定義内にvalidate="true"とinput="入力元ページ"を追記
  2. Actionに対応するFormクラスにvalidateメソッドをオーバーライド。
  3. エラー時はActionErrorsインスタンスにActionMessageインスタンスを作成し、Add()する。 ActionErrorsインスタンスを返す。
  4. 入力元JSPタグでエラー表記を追記


この部分でもStrutsがWebのしくみをうまく使ってプレゼンテーション層を効率的に作成するフレームワークであり、Strutsが提供しているルールに従って作成すれば、効率のよい仕組みができることがよくわかりました。