「Java/JavaEE/WebTier/Start」の編集履歴(バックアップ)一覧はこちら
追加された行は緑色になります。
削除された行は赤色になります。
Webアプリケーションの種類
-プレゼンテーション指向
--動的な内容を含む、マークアップによるインタラクティブなWebページ
-サービス指向
--Webサービスのエンドポイント
--プレゼンテーション指向のWebアプリがクライアントになることが多い
***Webアプリケーション
Webコンポーネントは動的な拡張性を与える
-サーブレット
--サービス指向のアプリの実装に向いてる
--リクエストのディスパッチ、バイナリデータの扱いなどプレゼンテーション指向アプリのコントロール
-JSF,Facelets
--XHTMLとかのテキストマークアップページの生成
-JSP
-Webサービスエンドポイント
WebコンポーネントはWebコンテナによって提供される
-リクエストディスパッチ
-セキュリティ
-並行性
-ライフサイクル管理
-名前空間、トランザクション、メールなどへのアクセス
Webアプリケーションの設定
-JavaEEアノテーション
-XML設定ファイル
***Web Application Lifecycle
Webアプリケーションの作成、配置、実行
+Webコンポーネントの作成
+DD作成
+コンパイル
+パッケージング
+Webコンテナへの配置
***Web Modules
Webリソース=Webコンポーネント、静的なWebコンテンツファイル
Webモジュール=最小の配備可能で利用可能なWebリソースの単位
-サーブレットのWebアプリケーションに対応
-サーバサイドのユーティリティクラスやクライアントサイドのクラスも含められる
Webモジュールの構成(ドキュメントルート以下)
-application-specific-dir
-WEB-INF
--classes
--tags
--lib
--web.xml
---JSFを使う場合
---セキュリティ情報を設定する場合
---Webコンポーネントアノテーションの設定をオーバライドする場合
--ejb-jar.xml
Webモジュールはパッケージされない状態、またはWARファイルとして配備できる
WARをGlassfishにデプロイする
-glassfish-web.xml を WEB-INFにおく
--実行時DD
--Webアプリケーションのコンテキストルート
--アプリケーションリソース名とGlassfishサーバ上でのリソース名のマッピング
Packaging a Web Module
Deploying a Web Module
Listing Deployed Web Modules
Updating a Web Module
Dynamic Reloading
-コードやDDを変更したときに、再デプロイが不要
-変更したクラスファイルをコピーするだけでいい
-サーバが定期的に、変更をチェックして自動的に再デプロイしてくれる
-開発時には有効だけど、製品モードではパフォーマンスが落ちるからやめたほうがいい。
-リロードされるとセッションが無効になる
-GlassFish ではデフォルトで有効
--管理コンソールから無効にできる
Undeploying Web Modules
***Conguring Web Applications
Webアプリケーションを設定するには、アノテーションまたはDDを用いる
-Mapping URLs to Web Components
--サーブレットのクラスアノテーション @WebServlet("/xxx")
-Declaring Welcome Files
--WebコンポーネントにマップされないURLに対して、ウェルカムファイルの検査が行われる
http://host:port/context/notmatch + <welcome file name>
***Setting Context and Initialization Parameters
-アプリケーションコンテキストオブジェクトをWebコンポーネントは共有する。
-アプリケーションコンテキストまたは、Webコンポーネントに初期化パラメータを設定できる
--web.xmlに設定
-- @WebServlet(..., initParams={@WebInitParam(name="xxx", value="yyy")})
***Mapping Errors to Error Screens
-エラーの種類に応じて、表示するエラー画面を設定できる
--HTTPレスポンスのステータスコード
--Java例外
-DDでエラーの種類ごとにerror-page要素で指定する
***Declaring Resource References
-リソースはアノテーションを使ってインジェクションできる
--エンタープライズビーン、データソース、Webサービス
--インジェクション先は、コンテナ管理オブジェクトでないとだめ
---Servlet, Servlet filter, Event listener, Taglib listener, Taglib tag handler, Managed Bean
***Declaring a Reference to a Resource
-リソース参照には、@Resourceアノテーションを使う
--クラス、メソッド、フィールドに付与
--コンテナによって、JNDIリソースがインジェクションされる
---変数名と型によって、インジェクションするリソースが解決される
---複数リソースをあるコンポーネントにインジェクションする
@Resources ({
@Resource (name="myDB" type=java.sql.DataSource),
@Resource(name="myMQ" type=javax.jms.ConnectionFactory)
})
***Declaring a Reference to a Web Service
Webサービスの参照をインジェクションするには、@WebServiceRefアノテーションを使う
Webアプリケーションの種類
-プレゼンテーション指向
--動的な内容を含む、マークアップによるインタラクティブなWebページ
-サービス指向
--Webサービスのエンドポイント
--プレゼンテーション指向のWebアプリがクライアントになることが多い
***Webアプリケーション
Webコンポーネントは動的な拡張性を与える
-サーブレット
--サービス指向のアプリの実装に向いてる
--リクエストのディスパッチ、バイナリデータの扱いなどプレゼンテーション指向アプリのコントロール
-JSF,Facelets
--XHTMLとかのテキストマークアップページの生成
-JSP
-Webサービスエンドポイント
WebコンポーネントはWebコンテナによって提供される
-リクエストディスパッチ
-セキュリティ
-並行性
-ライフサイクル管理
-名前空間、トランザクション、メールなどへのアクセス
Webアプリケーションの設定
-JavaEEアノテーション
-XML設定ファイル
***Webアプリケーションのライサイクル
Webアプリケーションの作成、配置、実行
+Webコンポーネントの作成
+DD作成
+コンパイル
+パッケージング
+Webコンテナへの配置
***Webモジュール
Webリソース=Webコンポーネント、静的なWebコンテンツファイル
Webモジュール=最小の配備可能で利用可能なWebリソースの単位
-サーブレットのWebアプリケーションに対応
-サーバサイドのユーティリティクラスやクライアントサイドのクラスも含められる
Webモジュールの構成(ドキュメントルート以下)
-application-specific-dir
-WEB-INF
--classes
--tags
--lib
--web.xml
---JSFを使う場合
---セキュリティ情報を設定する場合
---Webコンポーネントアノテーションの設定をオーバライドする場合
--ejb-jar.xml
Webモジュールはパッケージされない状態、またはWARファイルとして配備できる
WARをGlassfishにデプロイする
-glassfish-web.xml を WEB-INFにおく
--実行時DD
--Webアプリケーションのコンテキストルート
--アプリケーションリソース名とGlassfishサーバ上でのリソース名のマッピング
Packaging a Web Module
Deploying a Web Module
Listing Deployed Web Modules
-localhost:4848 の管理コンソールから確認
-asadmin list-applications
Updating a Web Module
Dynamic Reloading
-コードやDDを変更したときに、再デプロイが不要
-変更したクラスファイルをコピーするだけでいい
-サーバが定期的に、変更をチェックして自動的に再デプロイしてくれる
-開発時には有効だけど、製品モードではパフォーマンスが落ちるからやめたほうがいい。
-リロードされるとセッションが無効になる
-GlassFish ではデフォルトで有効
--管理コンソールから無効にできる
Undeploying Web Modules
***Conguring Web Applications
Webアプリケーションを設定するには、アノテーションまたはDDを用いる
-Mapping URLs to Web Components
--サーブレットのクラスアノテーション @WebServlet("/xxx")
-Declaring Welcome Files
--WebコンポーネントにマップされないURLに対して、ウェルカムファイルの検査が行われる
http://host:port/context/notmatch + <welcome file name>
***Setting Context and Initialization Parameters
-アプリケーションコンテキストオブジェクトをWebコンポーネントは共有する。
-アプリケーションコンテキストまたは、Webコンポーネントに初期化パラメータを設定できる
--web.xmlに設定
-- @WebServlet(..., initParams={@WebInitParam(name="xxx", value="yyy")})
***Mapping Errors to Error Screens
-エラーの種類に応じて、表示するエラー画面を設定できる
--HTTPレスポンスのステータスコード
--Java例外
-DDでエラーの種類ごとにerror-page要素で指定する
***Declaring Resource References
-リソースはアノテーションを使ってインジェクションできる
--エンタープライズビーン、データソース、Webサービス
--インジェクション先は、コンテナ管理オブジェクトでないとだめ
---Servlet, Servlet filter, Event listener, Taglib listener, Taglib tag handler, Managed Bean
***Declaring a Reference to a Resource
-リソース参照には、@Resourceアノテーションを使う
--クラス、メソッド、フィールドに付与
--コンテナによって、JNDIリソースがインジェクションされる
---変数名と型によって、インジェクションするリソースが解決される
---複数リソースをあるコンポーネントにインジェクションする
@Resources ({
@Resource (name="myDB" type=java.sql.DataSource),
@Resource(name="myMQ" type=javax.jms.ConnectionFactory)
})
***Declaring a Reference to a Web Service
Webサービスの参照をインジェクションするには、@WebServiceRefアノテーションを使う
//TODO