WebSphere Application Server - Express, Version 6.0.x   
             オペレーティング・システム: AIX , HP-UX, Linux, Solaris, Windows

             目次と検索結果のパーソナライズ化

EJB モジュールの ActivitySession デプロイメント属性の設定

Enterprise Bean が ActivitySession コンテキストに参加して、ActivitySession ベースの操作をサポートできるようにするには、このタスクを使用して Enterprise Bean 用の ActivitySession デプロイメント属性を構成します。

始める前に

このタスクの説明では、WebSphere Application Server でデプロイできるアプリケーション・エンタープライズ Bean を含むエンタープライズ・アーカイブ (EAR) ファイルがあることを前提としています。 アプリケーションのアセンブルについての詳細は、 アプリケーションのアセンブルを参照してください。

このタスクについて

アプリケーションのデプロイメント属性は、 アセンブリー・ツールを使用して構成します。 このトピックでは、Application Server Toolkit (AST) を使用して、ActivitySession デプロイメント属性を構成する方法について説明します。これらの属性は、Load at (Bean がどの時点でデータベースから状態をロードするかを指定する) などの他のデプロイメント属性に加えて構成します。 アセンブリー・ツールのフィールドに関する詳細、および関連するタスクのヘルプについては、ツールキットとともに提供されているヘルプ情報を参照してください。

Enterprise Bean 用に ActivitySession デプロイメント属性を設定するには、以下のステップを実行します。

プロシージャー

  1. アセンブリー・ツールを始動します。 AST の開始について詳しくは、このインフォメーション・センターのナビゲーション・ペインにある Application Server Toolkit 情報を参照してください。
  2. アプリケーション EAR ファイルを作成または編集します。
    注: ターゲット・サーバー として WebSphere Application Server バージョン 6 を設定したことを確認します。

    例えば、既存のアプリケーションの属性を変更するには、インポート・ウィザードを使用して EAR ファイルをアセンブリー・ツールにインポートします。インポート・ウィザードを開始するには、次のようにします。

    1. ファイル」->「インポート」->「EAR ファイル」とクリックします。
    2. 次へ」をクリックして EAR ファイルを選択します。
    3. 「ターゲット・サーバー」フィールドで、「WebSphere Application Server v6.0」を選択します。
    4. 終了」をクリックします。
  3. J2EE パースペクティブの「J2EE 階層」ビューで、Enterprise Bean インスタンスの EJB モジュールを右マウス・ボタン・クリックして、 「Open With」>「Deployment Descriptor Editor」と選択します。 その Enterprise Bean のプロパティー・ダイアログ・ノートブックが、プロパティー・ペインに表示されます。
  4. プロパティー・ペインで、「Bean」タブを選択します。
  5. 変更する Bean を選択します。
  6. 「WebSphere Extensions」セクションの「Bean のキャッシュ」で、「活動化」属性を「ActivitySession」に設定します。
    この活動化ポリシーを持つ Enterprise Bean は、以下のように活動化され、非活性化されます。
    • ActivitySession 境界で、活動化時に ActivitySession コンテキストが存在する場合。
    • トランザクション境界で、活動化時にトランザクション・コンテキストは存在するが、ActivitySession コンテキストは存在しない場合。
    • これ以外の起動境界の場合。
  7. 「ローカル・トランザクション」グループ・ボックスで、「境界」属性を「ActivitySession」に設定します。 この設定を使用すると、ローカル・トランザクションは、 それが開始された ActivitySession の有効範囲内で解決される必要があります。 ActivitySession コンテキストが存在しない場合は、 ローカル・トランザクションが開始された Bean メソッド内で解決されなければなりません。
  8. Entity Bean または Session Bean の場合は、それぞれの EJB メソッド ごとに ActivitySession プロパティーを設定します。
    1. プロパティー・ペインで、「ActivitySession」タブを選択します。
    2. Configure ActivitySession policies」フィールドで、「追加」または「編集」をクリックして、Enterprise Bean のメソッドの「アクティビティー・セッション種類」属性を設定します。 これにより、Enterprise Bean のビジネス・メソッドがメソッド起動を代行する場合に、コンテナーが ActivitySession 境界を管理する方法を指定します。
      常になし
      コンテナーは、ActivitySession コンテキストなしで Bean メソッドを呼び出します。
      • クライアントが ActivitySession コンテキスト内から Bean メソッドを呼び出した場合、 コンテナーは InvalidActivityException 例外をスローします。これは javax.rmi.RemoteException です。
      • クライアントが、ActivitySession コンテキストの外側から Bean メソッドを呼び出すと、 コンテナーは、非サポート値が設定されている場合と同様に振る舞います。 クライアントは、ActivitySession コンテキストなしでメソッドを呼び出す必要があります。
      必須
      コンテナーは常に、クライアントに関連付けられた ActivitySession コンテキスト内で Bean メソッドを呼び出します。 クライアントが ActivitySession コンテキストなしで Bean メソッドを呼び出そうとすると、 コンテナーは、ActivityRequiredException 例外をクライアントにスローします。ActivitySession コンテキストは、Enterprise Bean メソッドがアクセスするすべての EJB オブジェクトまたはリソースに渡されます。

      ActivityRequiredException 例外は、javax.rmi.RemoteException です。

      新規を必要とする
      コンテナーは、クライアントが ActivitySession コンテキストの内側あるいは外側のどちらでメソッドを呼び出すかにかかわらず、常に新規 ActivitySession コンテキスト内で Bean メソッドを呼び出します。 新規 ActivitySession コンテキストは、 この Bean メソッドが使用するすべての Enterprise Bean オブジェクトまたはリソースに渡されます。

      受信された ActivitySession コンテキストはすべて、そのメソッドの継続時間中は中断され、 そのメソッドの終了後にレジュームされます。 コンテナーは、メソッドのディスパッチ前に新規 ActivitySession を開始し、 メソッドが終了した後、その ActivitySession を完了します。

      必須
      コンテナーは、ActivitySession コンテキスト内で Bean メソッドを呼び出します。 クライアントが ActivitySession コンテキスト内から Bean メソッドを呼び出す場合、 コンテナーは、そのクライアント ActivitySession コンテキスト内で Bean メソッドを呼び出します。 クライアントが ActivitySession コンテキストの外側から Bean メソッドを呼び出す場合、 コンテナーは、新しい ActivitySession コンテキストを作成して、そのコンテキスト内から Bean メソッドを呼び出します。 ActivitySession コンテキストは、 この Bean メソッドが使用するすべての Enterprise Bean オブジェクトまたはリソースに渡されます。
      非サポート
      コンテナーは、ActivitySession コンテキストなしで Bean メソッドを呼び出します。クライアントが ActivitySession コンテキスト内から Bean メソッドを呼び出す場合、 コンテナーは、ActivitySession と現行スレッドの間の関連付けを中断してから、Enterprise Bean インスタンス上のメソッドを呼び出します。 次に、メソッドの起動が戻されると、コンテナーは中断されていた関連付けを再開します。 中断された ActivitySession コンテキストは、 この Bean メソッドが使用するどの Enterprise Bean オブジェクトおよびリソースにも渡されません。
      サポート
      クライアントが ActivitySession 内で Bean メソッドを呼び出す場合、 コンテナーは、ActivitySession コンテキスト内で Bean メソッドを呼び出します。 クライアントが ActivitySession コンテキストなしで Bean メソッドを呼び出す場合、 コンテナーは、ActivitySession コンテキストなしで bean メソッドを呼び出します。ActivitySession コンテキストは、 この Bean メソッドが使用するすべての Enterprise Bean オブジェクトまたはリソースに渡されます。
    3. 次へ」をクリックします。
    4. 「アクティビティー・セッション種類」ポリシーが適用されるメソッドを選択します。
    5. 終了」をクリックします。

    メソッド呼び出しの代行時にコンテナーが ActivitySession 境界をどのように管理するかは、 ここで設定される「 アクティビティー・セッション種類」および「コンテナー・トランザクション・タイプ」 (トランザクション・デプロイメント属性の構成 で説明しています) の両方の設定値に応じて異なります。 これら 2 つのプロパティー間の関係について詳しくは、ActivitySession とトランザクション・コンテナー・ポリシーの組み合わせ を参照してください。

  9. デプロイメント記述子の変更を保管します。
    1. デプロイメント記述子エディターを閉じます。
    2. 指示が出たら、「はい」をクリックして、デプロイメント記述子の変更を保管するよう指示します。
  10. アーカイブ・ファイルを検査します。 AST を使用したファイルの検査について詳しくは、このインフォメーション・センターのナビゲーション・ペインにある Application Server Toolkit 情報を参照してください。
  11. プロジェクトのポップアップ・メニューの「デプロイ」をクリックして、EJB デプロイメント・コードを生成します。
  12. オプション: WebSphere Application Server システムで 完了したモジュールをテストします。モジュールを右クリックして、 「サーバーで実行」をクリックし、 表示されるウィザードの指示に従います。
    重要:Run On Server」は、単体テスト用にのみ使用してください。 アセンブリー・ツールは、WebSphere Application Server のインストールを制御し、 アプリケーションがリモート側で公開される場合、アセンブリー・ツールは当該サーバーのサーバー構成ファイルを 上書きします。実動サーバーでは使用しないでください。

次の作業

アプリケーションのアセンブルが完了した後で、システム管理ツールを使用して、アプリケーションを実行するアプリケーション・サーバーに EAR ファイルをデプロイします。例えば、J2EE アプリケーションのデプロイと管理 で説明しているように、管理コンソールを使用します。



関連概念
ActivitySession サービス
関連タスク
ActivitySession サービスの使用
関連資料
ActivitySession とトランザクション・コンテナー・ポリシーの組み合わせ
タスク・トピック    

ご利用条件 | フィードバック

最終更新: Jan 21, 2008 11:31:28 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r0/index.jsp?topic=/com.ibm.websphere.express.doc/info/exp/ass/tasks/tas_depejb2.html