Cosminexus V9 アプリケーションサーバ 機能解説 基本・開発編(コンテナ共通機能)

解説書

3020-3-Y07-60


目  次

前書き
変更内容
はじめに

1. アプリケーションサーバの機能
1.1 機能の分類
1.1.1 アプリケーションの実行基盤としての機能
1.1.2 アプリケーションの実行基盤を運用・保守するための機能
1.1.3 機能とマニュアルの対応
1.2 システムの目的と機能の対応
1.2.1 ネーミング管理の機能
1.2.2 リソース接続とトランザクション管理の機能
1.2.3 OpenTP1からのアプリケーションサーバの呼び出し(TP1インバウンド連携機能)の機能
1.2.4 アプリケーションサーバで使用するJPAの機能
1.2.5 CJPAプロバイダの機能
1.2.6 CJMSプロバイダの機能
1.2.7 JavaMailの機能
1.2.8 アプリケーションサーバで使用するCDIの機能
1.2.9 アプリケーションサーバで使用するBean Validationの機能
1.2.10 アプリケーションの属性管理
1.2.11 アノテーションの機能
1.2.12 J2EEアプリケーションの形式とデプロイの機能
1.2.13 コンテナ拡張ライブラリの機能
1.3 このマニュアルに記載している機能の説明
1.3.1 分類の意味
1.3.2 分類を示す表の例
1.4 アプリケーションサーバ 09-70での主な機能変更

2. ネーミング管理
2.1 この章の構成
2.2 ネーミング管理の概要
2.2.1 ネーミング管理の機能
2.2.2 ネーミングサービス
2.3 JNDI名前空間へのオブジェクトのバインドとルックアップ
2.3.1 ルックアップで使用する名称の種類
2.3.2 JNDI名前空間のマッピングとルックアップ
2.3.3 JNDI名前空間の確認方法
2.3.4 cosminexus.xmlでの定義
2.3.5 実行環境での設定
2.4 Portable Global JNDI名でのルックアップ
2.4.1 JNDI名前空間の種類
2.4.2 自動的にバインドされるオブジェクト
2.4.3 Portable Global JNDI名の命名規則
2.4.4 Portable Global JNDI名の登録抑止
2.4.5 CTMを使用する場合のPortable Global JNDI名でのルックアップ
2.4.6 リソース参照の名称
2.4.7 アノテーションでのPortable Global JNDI名の指定
2.4.8 DDでの定義
2.4.9 実行環境での設定
2.5 HITACHI_EJBから始まる名称でのルックアップ
2.6 Enterprise BeanまたはJ2EEリソースへの別名付与(ユーザ指定名前空間機能)
2.6.1 別名を付けられる対象
2.6.2 別名の付与規則
2.6.3 別名が登録または削除されるタイミング
2.6.4 クライアントからの検索
2.6.5 Enterprise Beanの別名の設定
2.6.6 J2EEリソースの別名の設定
2.6.7 実行環境での設定
2.6.8 ユーザ指定名前空間機能を使用する場合の注意事項
2.7 ラウンドロビンポリシーによるCORBAネーミングサービスの検索
2.7.1 ラウンドロビン検索の範囲
2.7.2 ラウンドロビン検索の動作
2.7.3 ラウンドロビン検索をするために必要な設定
2.7.4 ラウンドロビン検索機能を使用する場合の推奨する設定
2.7.5 ラウンドロビン検索をする場合の注意事項
2.8 ネーミング管理機能でのキャッシング
2.8.1 キャッシングの流れ
2.8.2 ネーミングで使用したキャッシュのクリア
2.8.3 キャッシング機能を使用するための設定
2.8.4 ネーミングでのキャッシングの注意事項
2.9 ネーミングサービスの障害検知
2.9.1 ネーミングサービスの障害検知機能とは
2.9.2 ラウンドロビン検索機能との併用
2.9.3 ネーミングサービスの障害検知機能の挙動
2.9.4 実行環境の設定(障害検知機能を使用する場合)
2.9.5 ネーミングサービスの障害検知機能の注意事項
2.10 CORBAネーミングサービスの切り替え
2.11 EJBホームオブジェクトリファレンスの再利用(EJBホームオブジェクトへの再接続機能)
2.11.1 実行環境での設定(J2EEサーバの設定)
2.11.2 EJBホームオブジェクトリファレンスを再利用する場合の注意事項

3. リソース接続とトランザクション管理
3.1 この章の構成
3.2 リソース接続とトランザクション管理の概要
3.3 リソース接続
3.3.1 リソースへの接続方法
3.3.2 リソースアダプタの種類
3.3.3 リソースアダプタの使用方法
3.3.4 リソースアダプタの機能
3.3.5 リソースアダプタ以外の機能
3.3.6 リソースに接続するための実装
3.3.7 リソースアダプタの設定方法
3.3.8 リソースアダプタの設定の流れ(J2EEリソースアダプタとしてデプロイして使用する場合)
3.3.9 リソースアダプタの設定の流れ(J2EEアプリケーションに含めて使用する場合)
3.3.10 リソースアダプタの設定の流れ(Inboundで使用する場合)
3.3.11 リソースアダプタの設定の流れ(クラスタコネクションプールを使用する場合)
3.3.12 リソースアダプタ以外を使用する接続の設定
3.3.13 リソースアダプタについての注意事項
3.4 トランザクション管理
3.4.1 リソース接続でのトランザクション管理の方法
3.4.2 ローカルトランザクションとグローバルトランザクション
3.4.3 リソースごとに使用できるトランザクションの種類
3.4.4 トランザクションサービスで提供する機能
3.4.5 システム例外発生時のトランザクションの動作
3.4.6 トランザクションマネージャの取得
3.4.7 コンテナ管理のトランザクション(CMT)を使用する場合の処理概要と留意点
3.4.8 UserTransactionインタフェースを使用する場合の処理概要と留意点
3.4.9 リソース固有のトランザクション管理インタフェースを使用する場合の処理概要と留意点
3.4.10 トランザクションを使用しない場合の処理概要と留意点
3.4.11 JTAによるトランザクション実装時の注意事項
3.4.12 実行環境での設定
3.5 リソースへのサインオン方式
3.6 データベースへの接続
3.6.1 DB Connectorによる接続の概要
3.6.2 使用できるJ2EEコンポーネントおよび機能
3.6.3 接続できるデータベース
3.6.4 DB Connector(RARファイル)の種類
3.6.5 HiRDBと接続する場合の前提条件と注意事項
3.6.6 Oracleと接続する場合の前提条件と注意事項
3.6.7 SQL Serverと接続する場合の前提条件と注意事項
3.6.8 XDM/RD E2と接続する場合の前提条件と注意事項
3.6.9 実行環境での設定(リソースアダプタでの設定)
3.7 データベース上のキューとの接続
3.7.1 DB Connector for Reliable MessagingとReliable Messagingによる接続の概要
3.7.2 DB Connector for Reliable MessagingとReliable Messagingによる接続の特徴
3.7.3 使用できる機能
3.7.4 接続できるデータベース
3.7.5 DB Connector for Reliable Messaging(RARファイル)の種類
3.7.6 HiRDBのキューに接続する場合の前提条件
3.7.7 Oracleのキューに接続する場合の前提条件
3.7.8 データベース上のキューに接続するための設定
3.8 OpenTP1とのOutboundでの接続(SPPまたはTP1/Message Queue)
3.8.1 TP1 Connectorによる接続
3.8.2 TP1/Message Queue - Accessによる接続
3.8.3 OpenTP1とOutboundで接続するための設定
3.9 OpenTP1とのInboundでの接続
3.10 CJMSプロバイダとの接続
3.11 SMTPサーバとの接続
3.12 JavaBeansリソースの利用
3.12.1 JavaBeansリソースの機能
3.12.2 JavaBeansリソースの開始処理の流れ
3.12.3 JavaBeansリソースの実装
3.12.4 JavaBeansリソースの設定
3.12.5 JavaBeansリソースの入れ替え
3.13 そのほかのリソースとの接続
3.13.1 そのほかのリソースとの接続に使用するリソースアダプタ
3.13.2 そのほかのリソースとの接続で使用できる機能
3.14 パフォーマンスチューニングのための機能
3.14.1 コネクションプーリング
3.14.2 コネクションプーリングで使用できる機能
3.14.3 コネクションシェアリング・アソシエーション
3.14.4 ステートメントプーリング
3.14.5 ライトトランザクション
3.14.6 インプロセストランザクションサービス
3.14.7 DataSourceオブジェクトのキャッシング
3.14.8 DB Connectorのコンテナ管理でのサインオンの最適化
3.14.9 cosminexus.xmlでの定義
3.14.10 実行環境での設定
3.15 フォールトトレランスのための機能
3.15.1 コネクションの障害検知
3.15.2 コネクション枯渇時のコネクション取得待ち
3.15.3 コネクションの取得リトライ
3.15.4 コネクションプールの情報表示
3.15.5 コネクションプールのクリア
3.15.6 コネクションの自動クローズ
3.15.7 コネクションスイーパ
3.15.8 トランザクションタイムアウトとステートメントキャンセル
3.15.9 トランザクションリカバリ
3.15.10 障害調査用SQLの出力
3.15.11 オブジェクトの自動クローズ
3.15.12 cosminexus.xmlでの定義
3.15.13 実行環境での設定
3.16 そのほかのリソースアダプタの機能(Connector 1.5仕様に準拠するリソースアダプタの場合)
3.16.1 リソースアダプタのライフサイクル管理
3.16.2 リソースアダプタのワーク管理
3.16.3 メッセージインフロー
3.16.4 トランザクションインフロー
3.16.5 管理対象オブジェクトのルックアップ
3.16.6 コネクション定義の複数指定
3.16.7 アプリケーションサーバ独自のConnector 1.5 API仕様
3.16.8 Connector 1.5仕様に準拠したリソースアダプタを使用する場合の設定
3.16.9 属性ファイルの指定例
3.16.10 Connector 1.5仕様に準拠したリソースアダプタを使用する場合の注意事項
3.17 クラスタコネクションプール機能
3.17.1 Oracle RACを使用したOracleへの接続
3.17.2 クラスタコネクションプールの概要
3.17.3 使用するリソースアダプタ
3.17.4 クラスタコネクションプールの動作
3.17.5 手動によるコネクションプールの停止・開始の流れ
3.17.6 コネクションプールをクラスタ化するために必要な設定
3.18 リソースへの接続テスト
3.19 ファイアウォール環境での運用のための機能
3.19.1 トランザクションリカバリ用通信ポート
3.19.2 スマートエージェントが使用する通信ポート
3.19.3 ファイアウォール環境での運用のための設定
3.20 EJBクライアントアプリケーションでトランザクションを開始する場合の注意事項
3.20.1 アプリケーション開発時の注意事項
3.20.2 システム構築時の注意事項
3.20.3 システム運用時の注意事項

4. OpenTP1からのアプリケーションサーバの呼び出し(TP1インバウンド連携機能)
4.1 この章の構成
4.2 TP1インバウンド連携機能の概要
4.3 TP1インバウンド連携機能の前提条件
4.4 TP1インバウンド連携機能で使用するメモリの見積もり
4.5 OpenTP1の機能との対応
4.5.1 クライアントでサポートするOpenTP1の機能
4.5.2 OpenTP1のサーバの機能との対応
4.6 コネクション管理機能
4.6.1 コネクション管理機能の概要
4.6.2 コネクション接続要求の受信
4.6.3 電文の受信
4.6.4 コネクション接続要求の送信
4.6.5 電文の送信
4.6.6 一時クローズ処理によるコネクション数の調整
4.6.7 コネクション接続要求または電文送信失敗時のリトライ
4.7 RPC通信機能
4.7.1 RPC通信機能の概要
4.7.2 RPC要求の受信と組み立て
4.7.3 RPC要求のチェック
4.7.4 RPC応答の生成から送信まで
4.7.5 最大同時RPC要求受け付け数および受信タイムアウト
4.8 スケジュール機能
4.8.1 スケジュール機能の概要
4.8.2 スケジュールキューの制御
4.8.3 Message-driven Bean(サービス)の同時実行数の制御
4.8.4 サービス実行のタイムアウト
4.9 トランザクション連携機能
4.9.1 トランザクション連携機能の概要
4.9.2 グローバルトランザクションの範囲
4.9.3 グローバルトランザクションへのMessage-driven Bean(サービス)の参加条件
4.9.4 トランザクショナルRPCの受信と応答
4.9.5 同期点処理
4.9.6 同期点処理の最適化
4.9.7 トランザクション連携機能の設定
4.9.8 トランザクション障害発生時の対処
4.10 Message-driven Bean(サービス)の実装
4.10.1 Message-driven Bean(サービス)の実装の準備
4.10.2 クラスパスの設定
4.10.3 リスナインタフェースの実装
4.10.4 onMessageメソッドでの業務ロジックの実装
4.10.5 ejb-jar.xmlの定義
4.10.6 cosminexus.xmlの定義
4.10.7 Message-driven Bean(サービス)の開始
4.11 OpenTP1のアプリケーションプログラムの作成
4.12 アプリケーションサーバの実行環境での設定
4.12.1 J2EEサーバの設定
4.12.2 リソースアダプタの設定
4.13 OpenTP1での設定
4.13.1 ユーザサービスネットワーク定義によるスケジューラダイレクトの設定
4.13.2 性能解析トレースの設定
4.13.3 トランザクションの設定
4.14 OpenTP1とアプリケーションサーバ間のタイムアウトの設定
4.14.1 RPC要求受信およびRPC応答送信時のタイムアウト
4.14.2 トランザクションに関するタイムアウト
4.15 TP1インバウンドアダプタとMessage-driven Bean(サービス)の開始と終了
4.15.1 TP1インバウンドアダプタの開始と終了
4.15.2 Message-driven Bean(サービス)の開始と終了
4.16 性能解析トレース情報の引き継ぎ
4.16.1 性能解析情報を引き継ぐための準備
4.16.2 性能解析情報の対応
4.16.3 トランザクション連携機能を使用しない場合の性能解析トレース情報の引き継ぎ
4.16.4 トランザクション連携機能を使用する場合の性能解析トレース情報の引き継ぎ
4.17 TP1インバウンドアダプタで発生するRPCエラー応答

5. アプリケーションサーバでのJPAの利用
5.1 この章の構成
5.2 JPAの特長
5.2.1 JPAを使用したアプリケーションの利点
5.2.2 エンティティクラスとは
5.2.3 JPAプロバイダとは
5.3 アプリケーションサーバで使用できるJPAの機能
5.3.1 使用できるJPAプロバイダ
5.3.2 使用できるコンポーネント
5.3.3 サポートするアプリケーションの形式
5.3.4 サポートするクラスローダ構成
5.3.5 使用できるリソースアダプタ
5.4 EntityManagerとは
5.4.1 EntityManagerで提供するメソッド
5.4.2 EntityManagerの種類
5.4.3 トランザクションの制御とEntityManager
5.4.4 永続化ユニットとは
5.5 永続化コンテキストとは
5.5.1 EntityManagerと永続化コンテキスト
5.5.2 コンテナ管理のEntityManagerを使用する場合の永続化コンテキスト
5.5.3 アプリケーション管理のEntityManagerを使用する場合の永続化コンテキスト
5.6 コンテナ管理のEntityManagerを取得する方法
5.6.1 アプリケーションにEntityManagerをインジェクトする方法
5.6.2 アプリケーションからEntityManagerをルックアップする方法
5.6.3 DDによる@PersistenceContext定義のオーバーライド
5.7 アプリケーション管理のEntityManagerを取得する方法
5.7.1 アプリケーションにEntityManagerFactoryをインジェクトする方法
5.7.2 アプリケーションからEntityManagerFactoryをルックアップする方法
5.7.3 DDによる@PersistenceUnit定義のオーバーライド
5.8 persistence.xmlでの定義
5.8.1 <persistence-unit>タグに指定する属性
5.8.2 <persistence-unit>タグ下に指定するタグ
5.9 persistence.xmlの配置
5.10 JPAのインタフェース
5.10.1 javax.persistence.EntityManagerインタフェース
5.10.2 javax.persistence.EntityManagerFactoryインタフェース
5.11 アプリケーション設定時の注意事項
5.11.1 エンティティクラス配置時の注意
5.11.2 永続化ユニット名の参照スコープ
5.11.3 アプリケーションのデプロイ時にチェックされる項目
5.11.4 アプリケーションサーバでJPAを使用するときの注意事項
5.11.5 JPA機能を使用しないときの注意事項

6. CJPAプロバイダ
6.1 この章の構成
6.2 CJPAプロバイダとは
6.2.1 CJPAプロバイダでの処理
6.2.2 CJPAプロバイダが提供する機能
6.2.3 CJPAプロバイダを使用するための前提条件
6.2.4 DB Connectorのコネクション数の見積もり
6.3 エンティティを使用したデータベースの更新
6.4 EntityManagerによるエンティティの操作
6.4.1 エンティティの状態遷移
6.4.2 エンティティに対するpersist操作
6.4.3 エンティティに対するremove操作
6.4.4 データベースからのエンティティの取得
6.4.5 データベースとの同期
6.4.6 永続化コンテキストからのエンティティの切り離しとmerge操作
6.4.7 managed状態のエンティティ
6.5 データベースとJavaオブジェクトとのマッピング情報の定義
6.6 エンティティのリレーションシップ
6.6.1 リレーションシップの種類
6.6.2 リレーションシップのアノテーション
6.6.3 リレーションシップの方向
6.6.4 デフォルトマッピング(双方向のリレーションシップ)
6.6.5 デフォルトマッピング(単方向のリレーションシップ)
6.7 エンティティオブジェクトのキャッシュ機能
6.7.1 キャッシュ機能の処理
6.7.2 キャッシュの参照形態とキャッシュタイプ
6.7.3 キャッシュ機能の有効範囲
6.7.4 キャッシュ機能を使用するときの注意事項
6.8 プライマリキー値の自動採番
6.9 クエリ言語によるデータベース操作
6.10 楽観的ロック
6.10.1 楽観的ロックの処理
6.10.2 楽観的ロックに失敗した場合の例外処理
6.10.3 楽観的ロックを使用する際の注意事項
6.11 JPQLでの悲観的ロック
6.12 エンティティクラスの作成
6.12.1 エンティティクラスとデータベースの対応の定義
6.12.2 エンティティクラスの作成要件
6.12.3 エンティティクラスのフィールドに対するアクセス方法の指定
6.12.4 アクセサメソッドの作成
6.12.5 エンティティの永続化フィールドおよび永続プロパティの型
6.12.6 エンティティでのプライマリキーの指定
6.12.7 永続化フィールドおよび永続化プロパティのデフォルトマッピング規則
6.13 エンティティクラスの継承方法
6.13.1 継承クラスの種類
6.13.2 継承マッピング戦略
6.14 EntityManagerおよびEntityManagerFactoryの使用方法
6.14.1 EntityManagerでのエンティティのライフサイクル管理
6.14.2 EntityManagerおよびEntityManagerFactoryの設定方法
6.14.3 EntityManagerのAPIに関する注意事項
6.15 コールバックメソッドの指定方法
6.15.1 コールバックメソッドの指定個所
6.15.2 コールバックメソッドの実装
6.15.3 コールバックメソッドの呼び出し順序
6.16 クエリ言語を利用したデータベースの参照および更新方法
6.16.1 JPQLでのデータベースの参照および更新方法
6.16.2 ネイティブクエリでのデータベースの参照および更新方法
6.16.3 クエリ結果件数の範囲指定
6.16.4 フラッシュモードの指定
6.16.5 クエリヒントの指定
6.16.6 クエリの実行時の注意事項
6.17 JPQLの記述方法
6.17.1 JPQLの構文
6.17.2 SELECT文
6.17.3 SELECT節
6.17.4 FROM節
6.17.5 WHERE節
6.17.6 GROUP BY節およびHAVING節
6.17.7 ORDER BY節
6.17.8 バルクUPDATE文およびバルクDELETE文
6.17.9 JPQL使用時の注意事項
6.17.10 クエリ使用時に発生する例外
6.18 persistence.xmlの定義
6.19 実行環境での設定
6.20 アプリケーション開発時の注意事項

7. CJMSプロバイダ
7.1 この章の構成
7.2 CJMSプロバイダの概要
7.2.1 CJMSプロバイダとは
7.2.2 CJMSプロバイダのアプリケーションサーバ内での位置づけ
7.2.3 CJMSプロバイダの機能の概要
7.3 CJMSPリソースアダプタとCJMSPブローカーの配置
7.3.1 一つのCJMSPリソースアダプタに対して一つのCJMSPブローカーを配置する構成
7.3.2 複数のCJMSPリソースアダプタに対して一つのCJMSPブローカーを配置する構成
7.4 メッセージングモデルの種類
7.4.1 PTPメッセージングモデル
7.4.2 Pub/Subメッセージングモデル
7.5 メッセージの構成
7.6 メッセージセレクターによる受信メッセージの選択
7.7 メッセージ配信の高信頼性確保の仕組み
7.7.1 メッセージ配信時に発生するトラブルの種類と信頼性を確保する方法
7.7.2 トランザクションの利用
7.7.3 メッセージの流量制御
7.8 CJMSPブローカーの機能
7.8.1 コネクションサービス
7.8.2 送信先の管理とルーティングサービス
7.8.3 CJMSPブローカーの性能監視
7.8.4 管理情報およびメッセージの永続化サービス
7.9 CJMSPリソースアダプタの機能
7.10 Message-driven Beanの呼び出し
7.10.1 Message-driven Beanによるメッセージ処理の特徴
7.10.2 Message-driven Beanを呼び出す流れ
7.10.3 Message-driven Beanで必要な設定
7.10.4 トランザクションコンテキストの設定
7.11 アプリケーション実装時の制限事項
7.12 DDでの定義
7.13 実行環境の構築の流れ
7.14 CJMSPブローカーの設定
7.14.1 CJMSPブローカーの共通プロパティと管理コマンドのプロパティの設定
7.14.2 CJMSPブローカーの作成
7.14.3 CJMSPブローカーの個別プロパティの設定
7.14.4 CJMSPブローカーの起動
7.14.5 送信先の作成
7.15 CJMSPリソースアダプタの設定
7.16 J2EEアプリケーションの設定
7.17 CJMSプロバイダを使用する場合のシステムの開始と停止
7.17.1 システムの開始手順
7.17.2 システムの停止手順
7.17.3 CJMSPブローカーの状態の確認
7.18 障害対応用の情報の確認
7.19 CJMSプロバイダ使用時の注意事項

8. JavaMailの利用
8.1 この章の構成
8.2 セッションプロパティ
8.2.1 SMTPサーバに接続するためのセッションプロパティ
8.2.2 POP3サーバに接続するためのセッションプロパティ
8.3 JavaMailを利用する場合の注意事項

9. アプリケーションサーバでのCDIの利用
9.1 この章の構成
9.2 CDIの概要
9.3 CDIを利用したアプリケーションの開発
9.3.1 CDIの対象となるアプリケーション
9.3.2 CDIの対象となるJ2EEモジュールの注入関係
9.3.3 開発時の注意事項
9.4 クラスパスの設定(開発環境の設定)
9.4.1 ファイルの格納先
9.4.2 クラスパスの設定
9.5 CDIを利用するための設定(セキュリティの設定変更)
9.6 デバッグ用ログ(開発調査ログ)の利用
9.7 実行環境の設定
9.8 CDIを利用する場合の注意事項

10. アプリケーションサーバでのBean Validationの利用
10.1 この章の構成
10.2 Bean Validationの概要
10.3 Bean Validationの適用可能な範囲
10.4 Bean Validationの機能およびBean Validationの動作
10.5 Bean Validationの利用手順
10.5.1 JSFからBean Validationの利用手順
10.5.2 CDIからBean Validationの利用手順
10.6 デバッグ用ログ(開発調査ログ)の利用
10.7 validation.xmlの内容が不正な場合の情報の出力
10.8 Bean Validation実装時の注意事項

11. アプリケーションの属性管理
11.1 この章の構成
11.2 属性の管理
11.3 cosminexus.xmlを含むアプリケーション
11.3.1 cosminexus.xmlとは
11.3.2 cosminexus.xmlを含むアプリケーションを使用する利点
11.3.3 cosminexus.xmlを含むアプリケーションの作成
11.3.4 cosminexus.xmlの作成
11.3.5 cosminexus.xmlの作成例
11.3.6 cosminexus.xmlを含むアプリケーションの運用
11.3.7 cosminexus.xmlを含まないアプリケーションから移行する手順
11.4 DDの省略
11.4.1 アプリケーションサーバで実行できるアプリケーションの構成
11.4.2 application.xmlの有無による機能の違い
11.4.3 application.xmlがある場合のモジュールの決定規則
11.4.4 application.xmlがない場合のモジュールの決定規則
11.4.5 web.xmlを省略したWebアプリケーションに対する操作
11.4.6 DDを省略した場合に設定される表示名
11.4.7 application.xmlを省略した場合にapplication.xmlが作成される操作
11.4.8 application.xmlを省略した場合にJ2EEアプリケーションにリソースを追加するときの注意

12. アノテーションの使用
12.1 この章の構成
12.2 アノテーションの指定
12.2.1 アノテーションを使用するメリットと指定できるアノテーション
12.2.2 アノテーションを宣言したライブラリJARのクラスの使用
12.2.3 アノテーションを指定する場合のEnterprise Beanの実装
12.3 ロード対象のクラスとロード時に必要なクラスパス
12.4 DIの使用
12.4.1 @Resourceアノテーションで指定できるリソースのタイプ
12.4.2 @Resourceアノテーションを使用したリソースの参照解決
12.4.3 DI失敗時の動作
12.4.4 注意事項
12.5 アノテーションの参照抑止
12.5.1 アノテーション参照抑止機能の目的と適用範囲
12.5.2 アノテーションを参照するタイミング
12.5.3 DDでの定義(モジュール単位の設定)
12.5.4 アノテーション参照抑止機能の設定変更
12.6 アノテーションで定義した内容の更新
12.6.1 アノテーションの更新
12.6.2 DDによるアノテーションの上書き
12.6.3 サーバ管理コマンドを使用した定義の参照と更新
12.7 アノテーション使用時の注意事項

13. J2EEアプリケーションの形式とデプロイ
13.1 この章の構成
13.2 実行できるJ2EEアプリケーションの形式
13.3 アーカイブ形式のJ2EEアプリケーション
13.4 展開ディレクトリ形式のJ2EEアプリケーション
13.4.1 展開ディレクトリ形式の概要
13.4.2 アプリケーションディレクトリの構成
13.4.3 展開ディレクトリ形式のJ2EEアプリケーションを使用するための設定(セキュリティの設定変更)
13.4.4 展開ディレクトリ形式を使用する場合の注意事項
13.5 J2EEアプリケーションのデプロイとアンデプロイ
13.5.1 アーカイブ形式のJ2EEアプリケーションのデプロイとアンデプロイ
13.5.2 展開ディレクトリ形式のJ2EEアプリケーションのデプロイとアンデプロイ
13.5.3 EARファイル/ZIPファイルの展開ディレクトリ形式でのデプロイ
13.5.4 J2EEアプリケーションへのプロパティの設定
13.6 J2EEアプリケーションの入れ替え
13.7 J2EEアプリケーションのリデプロイ
13.7.1 リデプロイによるJ2EEアプリケーションの入れ替え
13.7.2 J2EEアプリケーションの状態と入れ替え
13.7.3 リデプロイによるJ2EEアプリケーションの入れ替えの注意事項
13.8 J2EEアプリケーションの更新検知とリロード
13.8.1 J2EEアプリケーションのリロード方法
13.8.2 リロードの適用範囲
13.8.3 リロード時のクラスローダの構成
13.8.4 エラー発生時の動作
13.8.5 更新検知の対象となるファイル
13.8.6 J2EEアプリケーションの更新検知インターバル
13.8.7 J2EEアプリケーションの構成ファイル更新用インターバル
13.8.8 Webアプリケーションのリロード
13.8.9 JSPのリロード
13.8.10 ほかの機能との関係
13.8.11 コマンドによるJ2EEアプリケーションのリロード
13.8.12 J2EEアプリケーションの更新検知とリロードの設定
13.8.13 リロードの注意事項および制限事項
13.9 WARアプリケーション
13.9.1 WARアプリケーション操作コマンドのサポート範囲
13.9.2 実行できるWARアプリケーションの形式
13.9.3 WARアプリケーションの入れ替え
13.9.4 WARアプリケーションのアプリケーション名
13.9.5 コンテキストルートの決定
13.9.6 cosminexus.xmlファイルの読み込み

14. コンテナ拡張ライブラリ
14.1 この章の構成
14.2 コンテナ拡張ライブラリの利用
14.3 コンテナ拡張ライブラリの機能
14.3.1 コンテナ拡張ライブラリ利用の検討
14.3.2 コンテナ拡張ライブラリの作成と利用の流れ
14.3.3 コンテナ拡張ライブラリの機能を使用するための設定
14.4 サーバ起動・停止フック機能
14.4.1 サーバ起動・停止フック処理の呼び出し順序
14.4.2 サーバ起動・停止フック機能の実装方法
14.4.3 サーバ起動・停止フック機能利用時のクラスパスの指定
14.5 スマートエージェント経由でのCORBAオブジェクトの呼び出し
14.5.1 CORBAオブジェクト呼び出し処理の実装時の注意事項
14.5.2 CORBAオブジェクト呼び出し処理のパッケージ化の注意事項
14.6 コンテナ拡張ライブラリおよびサーバ起動・停止フック機能利用時の制限事項

15. アプリケーション実装時の注意事項
15.1 スレッドローカル変数使用時の注意事項
15.2 Developer's Kit for Javaに関する注意事項
15.2.1 アプリケーションサーバのバージョン共通の注意事項
15.2.2 アプリケーションサーバ Version 6で提供していたJDK 1.4.2との仕様差異に関する注意事項
15.2.3 アプリケーションサーバ Version 7およびVersion 8で提供していたJDK 5.0との仕様差異に関する注意事項
15.3 sun.rmiから始まるロガー使用時の注意事項

付録
付録A 文字コード
付録A.1 アプリケーションで扱う文字コード
付録A.2 ブラウザとアプリケーション間の文字コード変換
付録B クラスローダの構成
付録B.1 デフォルトのクラスローダ構成
付録B.2 ローカル呼び出し最適化時のクラスローダ構成
付録B.3 クラスローダに設定されるクラスパス
付録C JPAプロバイダとEJBコンテナ間の規約
付録C.1 ランタイムに関する規約
付録C.2 デプロイメントに関する規約
付録D JPQLのBNF
付録E CJMSプロバイダのユースケース
付録E.1 すべてのユースケースに共通の前提条件
付録E.2 前提とするプロセスモデル
付録E.3 CJMSプロバイダを使用する場合の環境構築
付録E.4 CJMSプロバイダを使用するアプリケーションの追加
付録E.5 CJMSプロバイダを使用するアプリケーションの削除
付録E.6 CJMSプロバイダサービスの開始(初回起動時)
付録E.7 CJMSプロバイダサービスの開始(稼働中システムの再起動時)
付録E.8 CJMSPリソースアダプタとCJMSPブローカーの状態確認
付録E.9 メッセージ配信状況の確認と滞留時の対処(CJMSPブローカーを一時停止する方法)
付録E.10 メッセージ配信状況の確認と滞留時の対処(アプリケーションを停止する方法)
付録E.11 CJMSプロバイダサービスの終了
付録E.12 送信先の圧縮
付録E.13 送信先サイズの変更
付録E.14 永続化サブスクライバーの削除
付録E.15 CJMSPブローカーの状態監視
付録E.16 CJMSPブローカーの詳細情報確認
付録E.17 送信先の状態確認
付録E.18 永続化サブスクライバーの状態確認
付録E.19 CJMSPリソースアダプタに問題が発生した場合の解析
付録E.20 CJMSPブローカーが障害によって停止したときの解析
付録E.21 CJMSプロバイダサービス無応答時の解析
付録E.22 CJMSPリソースアダプタに問題が発生した場合の回復
付録E.23 CJMSPブローカーが障害によって停止したときの回復
付録E.24 CJMSプロバイダサービス無応答時の回復
付録E.25 CJMSプロバイダサービスインスタンスの削除
付録F 各バージョンでの主な機能変更
付録F.1 09-60での主な機能変更
付録F.2 09-50での主な機能変更
付録F.3 09-00での主な機能変更
付録F.4 08-70での主な機能変更
付録F.5 08-53での主な機能変更
付録F.6 08-50での主な機能変更
付録F.7 08-00での主な機能変更
付録G 用語解説

索引