レビュー
2004/02/27 16:00:00 更新
レビュー:WebアプリからEJB開発まで対応する「Borland JBuilder X」 (2/3)
配備記述子のGUI編集
Webアプリケーションでは、Webコンテナにどのように配備するかを決める配備記述子(DD:web.xmlファイル)が必要だ。このファイルは、XML形式なのでテキストエディタでも編集できるが、階層が深く、項目も多いことから、設定が複雑になる傾向がある。そこでJBuilder Xでは、配備記述子をプロパティ画面で編集できる機能が装備されている。この機能によって、開発者は、配備記述子の文法を覚えることなく、Webアプリケーションを開発できるのだ(Fig.6)。
配備記述子の設定項目は多岐に渡るが、特にリソース設定やセキュリティ設定をGUIで作業できるのは大きく評価できる点といえるだろう。
JSPページはGUIではなく、ソースで編集する
Webアプリケーションでは、ユーザーインタフェースとしてJSPページ(またはHTMLファイル)を使うわけだが、JBuilder Xでは、JSPページはソースファイルでの編集となる(Fig.7)。スタンドアロンアプリケーションやJavaアプレットと同様に、JavaBeansを貼り付けてGUIで編集というわけにはいかない。
ただしJBuilder X内蔵のビューアを利用し、その都度プレビューを確認しつつ作業することは可能だ。しかしプレビューでは、標準的なHTMLのプレビューができるだけであり、サーバ側で出力が構成されるタグライブラリのプレビューはできない。欲をいえば、やはりGUIで配置できるのが望ましいが、Webのユーザーインタフェースは、そもそも見栄えを確定するものでもなく、タグライブラリはサーバ上での実行により出力内容が定まることを考えれば、原理的に実現は難しくやむを得ないといえるだろう。
Strutsを使ったWebアプリケーションの開発
JBuilder Xでは、Strutsを使ったWebアプリケーションの開発機能もサポートしている。Strutsを使ってWebアプリケーションを構築するには、まず、オブジェクトギャラリから、アクションを作る。すると、ActionクラスとStrutsの設定ファイルとなるstruts-config.xmlファイルが自動生成され、Strutsを使った開発の準備が整う(Fig.8)。
JBuilder XのStruts開発支援の最大の機能は、アクションデザイナにある。StrutsにおけるWebアプリケーションは、「入力フォームとなるJSP」「入力フォームの値を保持するフォームBean」「実際の処理をするアクション」「出力するJSP」の4つ流れで構成される。これらの流れをGUIで設定するのが、アクションデザイナだ。アクションデザイナを利用したWebアプリケーション構築の流れは、次のようになる。
1. フォームBeanの作成
アクションデザイナでは、まず、入力フォームの値を保持するフォームBeanを作る(Fig.9)。フォームBeanは、ActionFormやDynaActionFormなどとして実装する。たとえば、ActionFormとして構成した場合には、アクションウィザードが起動し、ウィザード中にプロパティの追加ができる(Fig.10)。
2. JSPの作成
次に、「1.」で作成したフォームBeanを元に、入力ページとなるJSPファイルを作る。JSPファイルを作るには、オブジェクトブラウザから「ActionFormからJSP」を選択するのが容易だ(Fig.8を参照)。
「ActionFormからJSP」を選ぶと、ActionFormのクラス名を尋ねられるので、「1.」で作成したフォームBeanを選択する(Fig.11)。すると、そのフォームBeanに含まれるプロパティの一覧が表示されるので、必要なものを選べば、そのプロパティに対応する「<html:text>」タグなどが作られ、ユーザーからの入力を受け付けるJSPファイルができあがる(Fig.12)。
3. アクションの構成
そして次にActionを構成する。Actionもウィザードによって簡単に作成できる。ウィザードでは、Validatorを使って検証するかどうかを選択することもできる(Fig.13)。検証する場合には、検証に利用する入力JSPページの設定もする(Fig.14)。
4. 出力先となるJSPページを用意する
次に出力先となるJSPページを用意する。出力先となるJSPページを作成するための特別な機能は用意されていないので、JSPページを手作業で記述することになる。作成したJSPページは、アクションデザイナで転送先として追加しておくFig.15では、forwardという名前でOutput.jspを登録した。ここまでで、入力から出力までの流れができたことになる。
5. アクションのコーディング
その後は、必要に応じてexecuteメソッドの実装をする。標準では、例外を発生するコードとなっているので、ビジネスロジックとなるコードを記述すればよい。たとえば、forwardメソッドを使い「4.」で登録した出力JSPに転送するには、次のコードを記述する。
public class Untitled2Action extends Action { public ActionForward execute(ActionMapping actionMapping, ActionForm actionForm, HttpServletRequest httpServletRequest, HttpServletResponse httpServletResponse) { /**@todo: ここにビジネスロジックを入力します。これはスケルトンです。*/ FormBean formBean = (FormBean) actionForm; return actionMapping.findForward("forward"); // forwardへ転送 //throw new java.lang.UnsupportedOperationException( // "メソッド perform() は,まだ実装されていません。"); } } |
|
[大澤文孝,ITmedia]
Copyright © ITmedia, Inc. All Rights Reserved.