第8回:フレームワークの利用 (2/4)

How to Eclipse!
Eclipse3ではじめるJava Webアプリケーション開発

第8回:フレームワークの利用
著者:宮本 信二   2005/3/9
前のページ  1  2   3  4  次のページ
フレームワーク

   今回は、Eclipse上でフレームワークを利用する一例を紹介します。ミスマッチの解決にフレームワークを利用するという説明をしましたが、フレームワークの機能はそれだけではなく、画面遷移、入力チェックなど、Webアプリケーション開発を効率化し、品質を向上(均一化によるトータルでの向上)させるいくつかの機能を提供します。

   Webアプリケーションのフレームワークにも多くのものがありますが、ここでは、次のJ2EE5.0に標準で組み込まれるJSFについて取り上げてみましょう。


JSFって?

   JSF(JavaServer Faces)は、Java Webアプリケーションフレームワークの仕様です。JSFはEoD(開発の簡単さ)を実現するための技術で、WebアプリケーションをGUIアプリケーションのように擬似的なイベントドリブンで扱えること、IDEなどのツールの利用を想定した設計になっていることが特徴です。

   JSFはまた、JSR127で標準化された仕様であり、今後広く使われていくことが期待されています。JSFでは、ビーン管理、画面遷移(ナビゲーション)、入力チェック(バリデーション)、変換(コンバージョン)、イベント制御などの機能を提供します。


JSFとStruts

   現在、最も広く利用されているフレームワークとしてはStrutsがあります。Strutsは、JSFと比較すると次のようになります。

  Struts JSF
実績 多い(安定してる、枯れている) 少ない(新しい)
設計 コントローラベース イベントドリブン、コンポーネントベース
仕様 Apacheオープンソース J2EE標準

表1:JSFとStrutsの違い


   Strutsは古くから存在し、幾分枯れたフレームワークです(といってもバージョンアップも行われ、Struts2では大きな機能拡張が行われるでしょう)。枯れている分、安定しており、また、経験者も多く安心して利用できます。一方JSFは、昨年リリースされたばかりのフレームワークで、後から出た分Strutsより機能は優れていますが、まだまだ叩かれながら発展している感はあります。

   Strutsは、コントローラサーブレットを中心とし、アクションを作成していくことでアプリケーションを作成します。StrutsではJSP上でカスタムタグを「利用」することで、リクエストの取得やレスポンスの展開を行います。一方JSFは、ステートレスなHTTPを擬似的にイベントドリブンのMVCアプリケーションとして扱います。JSFは、JSP上で「コンポーネント化」したカスタムタグにより、リクエスト、レスポンスを扱います。

   StrutsはApacheプロジェクトで開発されたオープンソース製品として広く利用されています。一方JSFはJ2EEの仕様として標準化され、より広く利用されることが期待されています。

   なお、StrutsとJSFはどちらも設計の中心人物が同じなので、幾分似通っています。また、どちらも、その他の重厚なフレームワークと比較するとシンプルで、比較的簡単に利用できるものとなっています。現時点ではStrutsを利用することが無難な選択ですが、今後JSFの利用は広まっていくでしょう。


EclipseでJSFアプリケーションの開発

   多くのフレームワークは、物理的には単にJARファイルと設定ファイルの集合なので、ファイルをWebアプリケーションの適切なディレクトリにコピーすれば利用できます(そうでないものもあります)。ここでは、Eclipseを利用して簡単なJSFアプリケーションを作成する例を示します。作成するのは、データベースのテーブルを一覧、編集するアプリケーションです(図2)。

作成するアプリケーション
図2:作成するアプリケーション


   なお、ページの都合もありますので、JSFの詳細については割愛させていただきます。また、簡単のため、前回に引き続きJava5のRowSetを利用して作成しています。


環境の準備

   まず、JSFを実行するのに必要なファイルを入手します。JSFは仕様ですので、JSFを利用したアプリケーションを開発するには、仕様に対応した実装が必要になります。実装には、SunのJSF RIや、オープンソースのApache MyFacesなどがありますが、ここではJSF RIを利用することにします。

   JSF RIはSunのJSFページ(http://java.sun.com/j2ee/javaserverfaces/index.jsp)からダウンロードできます。Downloadsのリンクから、ここではv1.1.01をダウンロードしました。ダウンロードしたファイルを適当なディレクトリに展開します。


プロジェクトの作成

   ここでは、前回から引き続き、Tomcatプラグインを利用して開発していきます。まず、新規にTomcatプロジェクトを作成します。ここではmyjsfという名前でプロジェクトを作成しました。

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



著者プロフィール
宮本 信二  http://muimi.com/
テクニカルライター。Ja-Jakartaコミッタ。Java Webアプリケーション開発業務を経て、現在、主にJavaやOSS関連の調査、執筆を行っている。著書に「Eclipse 3 完全攻略」、「JavaデベロッパーのためのApacheAnt入門」(ソフトバンクパブリッシング)、「徹底解説!JSFのすべて」(秀和システム)などがある。


INDEX
第8回:フレームワークの利用
  Java Webアプリケーションの課題
フレームワーク
  必要なファイルのコピー
  JSP
Eclipse3ではじめるJava Webアプリケーション開発
第1回 Eclipse3の概要とインストール
第2回 Eclipse3の基本機能
第3回 Eclipse3の基本操作を憶えよう
第4回 Eclipseの便利な機能
第5回 Webアプリケーションの開発(1)〜JSP作成〜
第6回 Webアプリケーションの開発(2)〜サーブレットの作成〜
第7回 データベースの利用
第8回 フレームワークの利用
第9回 O/Rマッパーの利用
第10回 JUnitの利用
第11回 Antの利用
第12回 CVSの利用(1)
第13回 CVSの利用(2)
Eclipseが提供するBIとレポーティングツール
第1回 インストールからはじめるEclipse BIRT
第2回 データベースのデータをレポートに出力しよう
第3回 レポートを作成しよう
第4回 スクリプティング機能・Tomcatでのプレビュー・レポートエンジンを使用したレポート出力
Eclipse実践プラグイン開発
第1回 Eclipseとプラグイン
第2回 プラグインの配布とインストール
第3回 基本的なGUIコンポーネントの利用
第4回 JFaceのGUIコンポーネント
第5回 メニューとポップアップ・メニューの拡張
第6回 ビューの拡張
第7回 エディタの拡張
第8回 パースペクティブの拡張
第9回 プロパティと設定の拡張
Eclipse WTPによる標準開発ツールの提供
第1回 Eclipse WTPの概要とインストール
第2回 Eclipse WTPでHello World
第3回 Eclipse WTPのDB系ツールを使う
第4回 Eclipse WTPのエディタとその他のツール

人気記事トップ10

人気記事ランキングをもっと見る