TOP設計・移行・活用> 必要なファイルのコピー
How to Eclipse!
Eclipse3ではじめるJava Webアプリケーション開発

第8回:フレームワークの利用
著者:宮本 信二   2005/3/9
前のページ  1  2  3   4  次のページ
必要なファイルのコピー

   JSF RIを実行するのに必要なJARファイルと設定ファイルをプロジェクトにコピーします。
ファイルの配置
図3:ファイルの配置


   必要なJARファイルは、JSF RIを展開したディレクトリのlib以下にあります。libディレクトリ以下のJARファイルを作成したプロジェクトのWEB-INF/lib以下にコピーします。

   また、JSF RIはJSTLを利用しているので、その他にJSTLのJARファイルが必要です。JSTLのJARファイルはJSTLの実装であるJakarta TaglibsのWebページ(http://jakarta.apache.org/taglibs/index.html)からダウンロードするか、あるいは面倒であれば、JSF RIのsamples以下にあるサンプル(xxxx.war)にも含まれているので、WARを展開してその中からコピーしてもよいでしょう。

   今回のサンプルではデータベースも利用するので、JDBCドライバも別途コピーします。そして、コピーしたJARファイルをプロジェクトのクラスパスに追加してください。

   JSFの実行に最低限必要な設定ファイルは、web.xmlとfaces-config.xmlです。これらの内容については後述します。


ロジックの作成

   次の処理を行うJavaクラスを作成します。

  • テーブルから一覧を取得する
  • 選択行を更新する

   まず、前回の「データベースの利用」で作成したDBManagerを使いまわして、以下のクラスを作成します。executeQuery()メソッドはSELECT文を渡してCachedRowSetを返します。acceptChanged()メソッドは、CachedRowSetの更新を実行します。

Text  DBManager.java  (クリックするとソースコードが表示されます)

   次にJSPとやり取りをして実際のビジネスロジックを処理するVideoHandlerクラスを作成します。次のようになります。

Text  VideoHandler.java  (クリックするとソースコードが表示されます)

   getVideosModel()メソッドで、JSFのテーブルコンポーネントのデータを返します。updateSelectRow()メソッドで選択された行のUPDATE処理を行います。


設定ファイル

   次に設定ファイルを記述します。web.xmlは次のようになります。JSFのコントローラとなるFaceServletを*.jsfというURLパターンでサーブレットマッピングしています。

リスト1:web.xml
<?xml version='1.0'?>

<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>

<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>
javax.faces.webapp.FacesServlet
</servlet-class>
<load-on-startup> 1 </load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>

</web-app>

   faces-config.xmlがJSFの画面遷移やビーン登録もろもろの設定を行うファイルです。内容は以下のようになります。ここでは、先ほど作成したVideoHandlerを登録しているだけです。

リスト2:faces-config.xml
<?xml version='1.0'?>

<!DOCTYPE faces-config PUBLIC
"-//Sun Microsystems, Inc.//DTD JavaServer Faces Config 1.1//EN"
"http://java.sun.com/dtd/web-facesconfig_1_1.dtd">

<faces-config>

<managed-bean>
<managed-bean-name>videoHandler</managed-bean-name>
<managed-bean-class>hoge.VideoHandler</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>

</faces-config>
前のページ  1  2  3   4  次のページ



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


INDEX
第8回:フレームワークの利用
  Java Webアプリケーションの課題
  フレームワーク
必要なファイルのコピー
  JSP