|
|
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の更新を実行します。
|
DBManager.java (クリックするとソースコードが表示されます)
|
次にJSPとやり取りをして実際のビジネスロジックを処理するVideoHandlerクラスを作成します。次のようになります。
|
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のすべて」(秀和システム)などがある。
|
|
|
|