レビュー
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で作業できるのは大きく評価できる点といえるだろう。

fig06.gif

Fig.6■配備記述子の編集。配備記述子はGUIで設定できる。もちろん2Wayテクノロジーでの実装なので、直接web.xmlファイルを編集しても問題は生じない


JSPページはGUIではなく、ソースで編集する

 Webアプリケーションでは、ユーザーインタフェースとしてJSPページ(またはHTMLファイル)を使うわけだが、JBuilder Xでは、JSPページはソースファイルでの編集となる(Fig.7)。スタンドアロンアプリケーションやJavaアプレットと同様に、JavaBeansを貼り付けてGUIで編集というわけにはいかない。

 ただしJBuilder X内蔵のビューアを利用し、その都度プレビューを確認しつつ作業することは可能だ。しかしプレビューでは、標準的なHTMLのプレビューができるだけであり、サーバ側で出力が構成されるタグライブラリのプレビューはできない。欲をいえば、やはりGUIで配置できるのが望ましいが、Webのユーザーインタフェースは、そもそも見栄えを確定するものでもなく、タグライブラリはサーバ上での実行により出力内容が定まることを考えれば、原理的に実現は難しくやむを得ないといえるだろう。

fig07.gif

Fig.7■JSPページの編集。JSPページはソースとして編集する。入力支援機能を備えているので文法ミスのチェックができる


Strutsを使ったWebアプリケーションの開発

 JBuilder Xでは、Strutsを使ったWebアプリケーションの開発機能もサポートしている。Strutsを使ってWebアプリケーションを構築するには、まず、オブジェクトギャラリから、アクションを作る。すると、ActionクラスとStrutsの設定ファイルとなるstruts-config.xmlファイルが自動生成され、Strutsを使った開発の準備が整う(Fig.8)。

fig08.gif

Fig.8■アクションの作成。Strutsアプリケーションを作るには、まずアクションを作成する


 JBuilder XのStruts開発支援の最大の機能は、アクションデザイナにある。StrutsにおけるWebアプリケーションは、「入力フォームとなるJSP」「入力フォームの値を保持するフォームBean」「実際の処理をするアクション」「出力するJSP」の4つ流れで構成される。これらの流れをGUIで設定するのが、アクションデザイナだ。アクションデザイナを利用したWebアプリケーション構築の流れは、次のようになる。

1. フォームBeanの作成

 アクションデザイナでは、まず、入力フォームの値を保持するフォームBeanを作る(Fig.9)。フォームBeanは、ActionFormやDynaActionFormなどとして実装する。たとえば、ActionFormとして構成した場合には、アクションウィザードが起動し、ウィザード中にプロパティの追加ができる(Fig.10)。

fig09.gif

Fig.9■フォームBeanの作成。フォームBeanはActionFormやDynaActionFormとして構成する


fig10.gif

Fig.10■アクションウィザードの場合のプロパティの設定。必要なプロパティは、アクションウィザードで設定することで、自動的にgetter/setterが作られる


2. JSPの作成

 次に、「1.」で作成したフォームBeanを元に、入力ページとなるJSPファイルを作る。JSPファイルを作るには、オブジェクトブラウザから「ActionFormからJSP」を選択するのが容易だ(Fig.8を参照)。

 「ActionFormからJSP」を選ぶと、ActionFormのクラス名を尋ねられるので、「1.」で作成したフォームBeanを選択する(Fig.11)。すると、そのフォームBeanに含まれるプロパティの一覧が表示されるので、必要なものを選べば、そのプロパティに対応する「<html:text>」タグなどが作られ、ユーザーからの入力を受け付けるJSPファイルができあがる(Fig.12)。

fig11.gif

Fig.11■JSPの作成。プロパティに対応する「<html:text>」タグを持つJSPページが作られる


fig12.gif

Fig.12■完成したJSPページ。入力フォームが作られるので、適時編集する


3. アクションの構成

 そして次にActionを構成する。Actionもウィザードによって簡単に作成できる。ウィザードでは、Validatorを使って検証するかどうかを選択することもできる(Fig.13)。検証する場合には、検証に利用する入力JSPページの設定もする(Fig.14)。

fig13.gif

Fig.13■アクションを構成する


fig14.gif

Fig.14■アクションウィザード


4. 出力先となるJSPページを用意する

 次に出力先となるJSPページを用意する。出力先となるJSPページを作成するための特別な機能は用意されていないので、JSPページを手作業で記述することになる。作成したJSPページは、アクションデザイナで転送先として追加しておくFig.15では、forwardという名前でOutput.jspを登録した。ここまでで、入力から出力までの流れができたことになる。

fig15.gif

Fig.15■転送先の登録


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() は,まだ実装されていません。");
  }
}

コラム■Strutsコンバータ
ここでは、コーディングからWebアプリケーションを構築する行程を説明しているが、実際には、先にユーザーインタフェースありきで開発が進む場面も多い。たとえば、Webデザイナーが入力や出力のHTMLページの雛形を用意して、それに合うようにWebアプリケーションを構築するような場合だ。 その場合には、JBuilder XのStrutsコンバータを使うとよい。Strutsコンバータは、HTMLやJSPファイルにおけるHTMLタグをStrutsのタグライブラリのタグに置き換える機能だ。Strutsコンバータを使うと、たとえば、<INPUT>を<html:text>に変更するなどして、Struts対応のJSPページに変換できる。 本文中で説明しているように、JBuilder XにはGUIでのHTMLやJSPの編集機能はないが、市販のHTMLエディタとStrutsタグへの変換機能とを組み合わせれば、その問題の解決にもなるだろう。

前のページ | 1 2 3 | 次のページ

[大澤文孝,ITmedia]

Copyright © ITmedia, Inc. All Rights Reserved.