2006年度 東京サテライト校 エンタープライズ・アプリケーション II

Slides:



Advertisements
Similar presentations
年度 J2EE II 稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴. 2 この講義の位置づけ 3年前期の「データベース論 (J2EE I) 」に続く講義。 「データベース論」の講義内容を理解 していることが前提。
Advertisements

© The Seasar Project and the others all rights reserved. 1 Seasar Conference 2006 Spring JSF の波に乗れ! ~ Teeda ではじめる JSF Teeda プロジェクトリーダ.
Web アプリケーション開発 ~図書館管理システム~ 北海道情報大学 情報メディア学 部 情報メディア学科 新井山ゼミ 高橋 隼.
1 JSP の作成 JSF による Web アプリケーション 開発 第 4 回. 2 ここでの内容 JSF での JSP の作り方と動かし方につい て学ぶ。
「図書管理」のための Webアプリケーション開発 -Apache/Tomcat/MySQL/Java on Windows XP-
2006年9月27日 植田龍男 Webサービス II (第1回) 年9月27日 植田龍男.
ZKプラグインで、Grailsの Viewをリッチに楽しく
2004年度 サマースクール in 稚内 JSFによるWebアプリケーション開発
バリデータ J2EE II 第11回 / 2006年1月19日.
JPAを利用した RESTful Webサービスの開発
2006年11月22日 植田龍男 Webサービス II (第9回) 年11月22日 植田龍男.
JSFによるWebアプリケーション開発 第9回
WebサービスII (第10回) 2007年11月28日 植田龍男.
エンタープライズアプリケーション II 第10回 / 2006年7月23日
情報理工学部 情報システム工学科 ラシキアゼミ3年 H 岡田 貴大
JSFによるWebアプリケーション開発 第11回
Servlet J2EE I 第8回 /
JavaServlet&JSP入門 01K0018 中村太一.
Webアプリケーション.
稚内北星学園大学 情報メディア学部 助教授 安藤 友晴
タグライブラリ ソフトウェア特論 第6回.
「クラナビ」 アーキテクチャ定義書 enTrance プロジェクト.
タグライブラリとJSP J2EE I 第10回 /
稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴
ビューとコントローラ.
Curlの仕組み.
タグライブラリとJSP J2EE II 第2回 2004年10月7日 (木).
JSFによるWebアプリケーション開発 第6回
HTTPプロトコル J2EE I 第7回 /
エンタープライズアプリケーション II 第7回 / 2006年7月9日
Day3 Day4 Day3 Day4.
2005年10月6日 植田龍男 Webサービス II (第2回) 年10月6日 植田龍男.
JSPの作成 J2EE II 第3回 2005年4月10日.
稚内北星学園大学 情報メディア学部 安藤 友晴
Javaによる Webアプリケーション入門 第5回
2004年度 サマースクール in 稚内 JavaによるWebアプリケーション入門
2003年度 データベース論 安藤 友晴.
Webアプリケーションの方向性 データベース論 第13回.
理学部 情報科学科 指導教官 千葉 滋 助教授 学籍番号 03_03686 内河 綾
Javaによる Webアプリケーション入門 第6回
Javaによる Webアプリケーション入門 第7回
Jakarta Struts (2) ソフトウェア特論 第11回.
Javaによる Webアプリケーション入門 第2回
JAVAについて 高橋 雅哉.
エンタープライズアプリケーション II 第9回 / 2006年7月23日
Javaによる Webアプリケーション入門 第11回
JDBC J2EE I (データベース論) 第5回 /
Servlet ソフトウェア特論 第7回.
Servlet J2EE I (データベース論) 第12回 /
Servlet データベース論 第6回.
JSFによるWebアプリケーション開発 第3回
JDBC ソフトウェア特論 第3回.
EntityManager と EJB QL EJB 3.0 コース 第8回 2006年8月5日.
Webアプリケーションと JSPの基本 ソフトウェア特論 第4回.
Javaによる Webアプリケーション入門 第8回
Annotation EJB 3.0 コース 第3回 2006年8月4日.
WebアプリケーションとTomcat ― これまでの復習とこれからの予習 ―
JSPの基本 データベース論 第2回.
Action Method の実装 J2EE II 第9回 2004年12月2日.
稚内北星学園大学 情報メディア学部 安藤 友晴
Jakarta Struts (1) ソフトウェア特論 第10回.
稚内北星学園大学 情報メディア学部 専任講師 安藤 友晴
JSPの基本 J2EE I (データベース論) 第8回 /
使用する CSS・JavaScrpitも指定
第2回 Webサーバ.
JSFによるWebアプリケーション開発 第5回
Project GlassFish と Java Pet Store
JSFによるWebアプリケーション開発 第10回
JSFによるWebアプリケーション開発 第7回
MVCモデル2による Webアプリケーション
Presentation transcript:

2006年度 東京サテライト校 エンタープライズ・アプリケーション II 稚内北星学園大学 情報メディア学部 助教授  安藤 友晴

本講義の目標 JSFを使って、「ラクに」Webアプリケーションを作ろう!

本講義のスケジュール 第1日 (6/18) 第2日 (7/9) 第3日 (7/23) JSF概説 コンバータ Ant バリデータ MVCモデル2とJSF JSPの作成 画面遷移 第2日 (7/9) Value Binding Method Binding Component Binding 第3日 (7/23) コンバータ バリデータ さまざまなUIコンポーネント

本講義の単位の認定について レポート課題を提示します。 レポートを評価して単位を認定 すべてのレポートの提出が必須 サマースクール「JSFとAjaxコース」に参加の方は、課題の進捗状況を判断のうえ単位の発行が可能になります

エンタープライズアプリケーション II 第1回 2006年6月18日 JSF概説 エンタープライズアプリケーション II 第1回 2006年6月18日

ここでの講義内容 Java EE (J2EE) JSFとは何か? guessNumberサンプルアプリケーション JSFの情報源

Java EE (J2EE)

J2EEの基本モデル J2EEは「データベース」を使った「Webアプリケーション」の作成を念頭に置いている技術 (3層モデル)

J2EEサーバとコンテナ 3層モデルの中央に位置 大きく分けて、次の2つの機能を持つ 2つのコンテナでは、それぞれJavaのプログラムが動く Webコンテナ EJBコンテナ 2つのコンテナでは、それぞれJavaのプログラムが動く

Servlet と JSP J2EEでは動的なページを作成するためServletとJSPを使う。 Servlet JSP HttpServlet を継承する Javaプログラム。 HTML を埋め込める (あまり使わないけど) JSP ほとんどHTML Javaプログラムを埋め込める (あまり使わないけど) 「Webコンテナ」の内部ではServletに変換される どちらも「Webコンテナ」で動く。 普通は Servlet と JSP を組み合わせて使う。

MVCモデル2とフレームワーク ServletやJSPは、「MVCモデル2」という技術で組み合わせる。 MVCモデル2に基づく「フレームワーク」を使うと、Webアプリケーションの作成が楽になる JSF Struts Tapestry など

Javaからデータベースを利用 JDBC O/R Mapping JavaでSQLをラッピングしたもの Entity Bean / Hibernate / Cayenne など 2006年に Java Persistence API がリリース。O/R Mapping の標準APIになっていく

Java EE 5 の登場 2006年5月に正式リリース http://java.sun.com/javaee/ 「J2EE 1.5」となるべきものを「Java EE 5」に改称 http://java.sun.com/javaee/ リファレンスインプリメンテーション = RI = 参照実装 Project GlassFish https://glassfish.dev.java.net/

Java EE 5 の技術的な特徴 (1) EoD (= Ease of Development = 開発の容易性)の導入 J2SE 5.0 に加わった新しい言語仕様の積極的な利用 特にAnnotation Dependency Injection (DI) の考え方 POJO (Plain Old Java Object) / POJI (Plain Old Java Interface) の利用

Java EE 5 の技術的な特徴 (2) WebアプリケーションではJSFの利用が基本 「改良されたStruts」としてのJSF ビジネスロジックとO/R Mapping には EJB 3.0 の利用が基本 これまでのEJBが劇的にシンプルに Java EE 5 = JSF + EJB 3.0

JSFとは何か?

フレームワーク (1) Webアプリケーションのような、パターン化されたプログラムを作成するときに使われるもの。 フォームで入力されたパラメータの値を取得する。 ボタンが押されたら次の画面に移る。

フレームワーク (2) フレームワークでは、こうしたパターン化された機能があらかじめ用意されている。 プログラム開発者は、個々のプログラムに固有の機能を追加すればよい。 決まったパターンをわざわざ書く必要がないので、プログラム開発が楽になる。

JSF (JavaServer Faces) とは何か Webアプリケーションのユーザインタフェースを作成するためのフレームワーク ツールでのWebアプリケーションの作成を強く意識している技術 ボタンやテキストボックスを Drag & Drop して Webアプリケーションを開発していく。

JSFは誰が作っているか (1) Java Community Process (JCP) JSF は、 JCP の中の “JSR 127” で仕様を策定 JSF は、Javaの標準フレームワーク JSF 1.2 からは “JSR 252“ 2004年3月に version 1.0 が正式リリース 2004年5月に version 1.1 2004年9月に version 1.1.01 2006年5月に version 1.2 2006年5月ににリリースされた “Java EE 5” に含まれる

JSFは誰が作っているか (2) JSF 1.1 の仕様策定の中心となっているのは、Craig McClanahan MVCモデル2 を用いたフレームワークである Struts を作った人 Struts と重複する機能が多い

JSFで何ができるか MVCモデル2 による Webアプリケーションのフレームワークを用意 「UIコンポーネント」でWebページを構成 これまでStruts などが対応してきた部分 JSF は View と Controller を担当 「UIコンポーネント」でWebページを構成 ラベル、テキスト入力フィールド、ボタンなど AWT/Swing で画面を構成するようなイメージ イベント処理の概念

guessNumber サンプルアプリケーション

どんなサンプルか? Duke くんが思っている数を当てるゲーム。 0 ~ 10 までの数を入力する 当たりかはずれか表示

実行画面

実行方法 Tomcat を起動する アプリケーション・マネージャで、JSF 1.1.01 のアーカイブにある samples/jsf-guessNumber.warを配備 http://localhost:8080/jsf-guessNumber/ にアクセスする。

UIコンポーネントによる 画面構成 Webの画面はUIコンポーネントから構成される。

画面遷移 ボタンをクリックしたら、画面が遷移する。

間違ったデータが入力 されたら? 数字を入れるべきところを “wakhok” のような文字列を入力したら、エラーメッセージが表示される。

JSFの情報源

情報源 本家 java.net Apache MyFaces http://java.sun.com/javaee/javaserverfaces/ java.net https://javaserverfaces.dev.java.net/ Apache MyFaces http://myfaces.apache.org/ JSF仕様のApache Software License による実装 + 豊富なUIコンポーネント