ページの先頭行へ戻る
 Apcoordinatorユーザーズガイド
FUJITSU Software

33.2.8 InterstageのIJServerクラスタ起動時のセションBean呼び出し

InterstageでIJServerクラスタを使用する場合には、Interstageのライフサイクルモジュールを利用することによって、IJServerクラスタの起動時にApcoordinatorで作成したセションBeanを実行することができます。ライフサイクルモジュールは、IJServerクラスタの起動、停止などのイベントを契機として任意の処理を実行するためのクラスです。Apcoordinatorは、IJServerクラスタの起動時にセションBeanを呼び出すライフサイクルモジュールを用意しており、利用者が独自にライフサイクルモジュールを開発することなく、IJServerクラスタ起動時にセションBeanを呼び出すことが可能です。

Apcoordinatorが提供するライフサイクルモジュールを利用すると、以下の処理が実現できます。

Apcoordinatorが提供するライフサイクルモジュールは、ライフサイクルイベントREADY_EVENTが発生したときにセションBeanを呼び出します。 READY_EVENTは、アプリケーションのロード後、アプリケーションへのアクセス受付開始後に発生します。ライフサイクルモジュールの詳細はInterstage Application Server/Interstage Web Server Java EE運用ガイドの「ライフサイクルモジュール」を参照してください。

注意

  • Apcoordinatorが提供するライフサイクルモジュールから呼び出せるのは、Apcoordinatorで作成したセションBeanです。

  • ライフサイクルモジュールからは、ローカルビジネスインタフェースを使ってセションBeanを呼び出すことはできません。

33.2.8.1 利用者定義処理の実行

IJServerクラスタの起動時にセションBeanで利用者定義の処理を実行する場合は、実行する処理をアプリケーションに追加します。また、Apcoordinatorが提供するライフサイクルモジュールをIJServerクラスタに設定します。

ここでは処理の追加方法を説明します。ライフサイクルモジュールの設定については33.2.8.3 ライフサイクルモジュールの設定を参照してください。

  1. ビジネスクラスへのメソッドの追加

    IJServerクラスタ起動時に実行するメソッドをビジネスクラスに追加します。引数はDispatchContextのみです。以下の例では、メソッド名をstartEjbとしています。

    package somepackage;
    
    import com.fujitsu.uji.DispatchContext;
    import com.fujitsu.uji.GenericHandler;
    
    public class SomeHandler extends GenericHandler
    {
        public void startEjb(DispatchContext context) {
          // IJServer起動時に実行する処理を記述します。
          ...
        }
        ...
    }

    処理結果に応じてIJServerクラスタの起動を中止させる場合は、以下の設定と処理が必要です。

    • IJServerクラスタの起動を中止させたい場合は、ビジネスクラスから例外を発生させます。

    • 例外発生時にIJServerクラスタの起動を中止するように、ライフサイクルモジュールを設定します。詳細は33.2.8.3 ライフサイクルモジュールの設定を参照してください。

  1. コマンドマップの追加

    作成したメソッドを、コマンドマップに追加します。データBeanはなし、コマンドはuji.initializeです。

    ;uji.initialize=somepackage.SomeHandler.startEjb

33.2.8.2 セションBeanの初期化処理の実行

IJServerクラスタの起動時にセションBeanの初期化処理を実行する場合は、 Apcoordinatorが提供するライフサイクルモジュールをIJServerクラスタに設定します。詳細は33.2.8.3 ライフサイクルモジュールの設定を参照してください。セションBeanに処理を追加する必要はありません。

33.2.8.3 ライフサイクルモジュールの設定

ライフサイクルモジュールは、Java EE管理コンソール(Interstage Java EE)またはJava EE運用コマンドを使って設定します。

設定方法の詳細は、Interstage Application Server/Interstage Web Server Java EE運用ガイドの「ライフサイクルモジュール」を参照してください。

Apcoordinatorが提供するライフサイクルモジュールを使用するには以下の設定が必要です。

設定項目

設定値

管理コンソールの項目名

Java EE運用コマンドの項目名

名前

オペランド
module_name

ライフサイクルモジュールの定義名を指定します。"initialize"など、適宜設定します。

(設定不要)

オプション
--target

ライフサイクルモジュールの定義を登録するIJServer名を指定します。

クラス名

オプション
--classname

com.fujitsu.uji.ejb.workunit.ReadyListenerを指定します。

クラスパス

オプション
--classpath

ライフサイクルモジュールのクラスパスを指定します。以下のクラスパスを指定します。

  • uji.jar

  • ujiejb3.jar

  • 呼び出すセションBeanのクライアント配付物

追加プロパティ

オプション
--property

呼び出すセションBeanのJNDI名を以下の形式で指定します。

ejb=JNDI名

セションBeanのJNDI名がどのように決定されるかについては、Interstage Application Server/Interstage Web Server Java EE運用ガイドの「JNDI」を参照してください。

上記以外の項目は必要に応じて設定してください。