JSFとは何か

JSF概説
J2EE II 第5回
2004年10月28日
1
フレームワーク (1)


Webアプリケーションのような、パターン化された
プログラムを作成するときに使われるもの。
例えば、どんなWebアプリケーションでも、次のよ
うな処理をする必要がある。


フォームで入力されたパラメータの値を取得する。
ボタンが押されたら次の画面に移る。
2
フレームワーク (2)



フレームワークでは、こうしたパターン化された機
能があらかじめ用意されている。
プログラム開発者は、個々のプログラムに固有
の機能を追加すればよい。
決まったパターンをわざわざ書く必要がないので、
プログラム開発が楽になる。
3
JSF (JavaServer Faces) とは
何か



Webアプリケーションのユーザインタフェースを
作成するためのフレームワーク
ツールでのWebアプリケーションの作成を強く意
識している技術
仕様策定の中心となっているのは、Craig
McClanahan


MVCモデル2 を用いたフレームワークである Struts
を作った人
Struts と重複する機能が多い
4
JSFは誰が作っているか

Java Community Process (JCP)






Javaの標準技術を定める手続き
JSF は、 JCP の中の “JSR 127” で仕様を
策定
JSF は、Javaの標準フレームワーク
2004年3月に version 1.0 が正式リリース
2004年5月に version 1.1
2004年9月に version 1.1.01
5
JSFで何ができるか

MVCモデル2 による Webアプリケーション
のフレームワークを用意



これまでStruts などが対応してきた部分
JSF は View と Controller を担当
「UIコンポーネント」でWebページを構成



ラベル、テキスト入力フィールド、ボタンなど
Swing で画面を構成するようなイメージ
イベント処理の概念
6
環境設定
7
JSFのアプリケーションを動かす


Tomcat などの「Webコンテナ」の中で動作
する。
ソフトウェアのダウンロード




Tomcat
JSF
JSTL
Ant
8
JSF 1.1.01 のダウンロード

JSF のページからダウンロードして、zip
ファイルを開くだけ。


http://java.sun.com/j2ee/javaserverfaces/i
ndex.jsp
次のものが含まれている



必要なライブラリ
サンプルプログラム
各種ドキュメント
9
JSTL 1.1 のダウンロード



Tomcat で JSF を動かすには、JSTL (Java
Standard Tag Library) が必要になる。
バージョンは 1.1
とりあえずダウンロードしておく。
10
guessNumber
サンプルアプリケーション
11
どんなサンプルか?



Duke くんが思っている数を当てるゲーム。
0 ~ 10 までの数を入力する
当たりかはずれか表示
12
実行画面
13
実行方法



JSF 1.1.01 のアーカイブから samples/jsfguessNumber
を、%CATALINA_HOME%\webapps にコ
ピーする。
Tomcat を起動する
http://localhost:8080/jsf-guessNumber/
にアクセスする。
14
UIコンポーネントによる
画面構成

Webの画面はUIコ
ンポーネントから構
成される。
15
画面遷移

ボタンをク
リックしたら、
画面が遷移
する。
16
間違ったデータが入力
されたら?

数字を入れるべきと
ころを “wakhok” の
ような文字列を入力
したら、エラーメッ
セージが表示される。
17