連載
» 2004年05月01日 00時00分 公開

Strutsを使うWebアプリケーション構築術(4):リクエスト情報を制御するアクションフォームBeans (1/3)

[山田祥寛,@IT]

 前回「Strtusとデータベースの連携」では、「書籍登録・更新アプリケーション」を例に、Strutsアプリケーションとデータベースサーバとの連携方法について学びました。今回は、引き続き「書籍登録・更新アプリケーション」にデータ登録・更新画面を追加しながら、各クラス間におけるデータの授受方法について学習することにしましょう。これまで比較的影の薄かったアクションフォームBeansが、ここでようやく本格的に登場します。

今回紹介するアプリケーションの概要

 まず、前回まで作成したアプリケーションを振り返りましょう。以下の画面は、前回までに作成した書籍情報の一覧表示です。

書籍情報一覧 書籍情報一覧

 今回は、以下のような「個別詳細画面」を作成します。このページでは、書籍情報の新規登録・更新・削除を行うことができます。このページは、上記の書籍情報一覧の画面で[新規登録]をクリックすると示されます。

空欄の登録用画面が表示される 空欄の登録用画面が表示される

 書籍情報一覧の既存タイトル(書籍名)をクリックすると以下の画面が表示されます。この画面では書籍情報の更新が行えます。

既存タイトルをクリックすると、該当書籍の更新画面を表示する。ISBNコードは入力できない 既存タイトルをクリックすると、該当書籍の更新画面を表示する。ISBNコードは入力できない

 次に、今回登場するファイルの関連図とコード実行時の内部的な流れを示しておきます。いきなり個々のコードに注意を向けるのではなく、まず先に全体像を把握しておけば、理解を深められるはずです。いまの段階では、細かいことはあまり気にせず、大まかな流れをつかむつもりで眺めてみてください。

アプリケーションの概念図 アプリケーションの概念図
サンプルアプリケーションの処理の流れ
No 処理概要
1 BookView.jspで[新規登録]リンク、または既存タイトルをクリック
2 リクエストパス「/BookWriteViewAction」に対してデータ送信が行われる(実際にはパスの指定にかかわらず、アクションサーブレットが起動)
3 リクエストデータを受け取ったアクションサーブレットが「/BookWriteViewAction」をキーにコンフィグレーションファイル配下の<action>要素を検索。リクエスト処理に使われるアクションフォームBeansとアクションクラスを特定する
4 既存タイトルをクリックした場合には、クエリ情報“isbn”の内容をアクションフォームBeansクラス(DynaActionForm)にセット。この際、コンフィグレーションファイルに設定されたプロパティ名に従って、動的にパラメータが格納される
5 3.で特定したアクションクラスBookUpdateViewProcessを起動。executeメソッドをコールし、指定されたISBNコードをキーにデータベースの検索処理を行う([新規登録]の場合には、この処理をスキップ)
6 処理結果ステータス“success”をキーとして、コンフィグレーションファイルの<action>/<forward>要素を検索。対応するパス(path属性)に処理を転送する
7 最終的な遷移先BookUpdate.jspで、5で取得した書籍情報を入力フォームに初期値セットする(初期値セットに際しては、入力フォームで指定された「/BookWriteAction」をキーに、アクションフォームBeansクラスBookUpdateFormのresetメソッドが呼び出される)

 それでは、次のページからアクションフォームBeansについての具体的な説明に移りましょう。

       1|2|3 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。