ページの先頭行へ戻る
Interstage Service Integrator V9.5.0 アプリケーション開発ガイド
FUJITSU Software

3.5.3 ジャンプ用メディエータファンクション実装例

ジャンプ先を設定するESIJumpSample.java(ジャンプ用メディエータファンクション)のサンプルプログラムです。

        :
        :
public class ESIJumpSample {
    // (1) パラメタで共通メッセージを取得する。
    public void jump(ESIMessage msg, String result) {

        // 値によりジャンプ先を設定する。
        if ("SOAP".equals(result)) {
            // (2) ステップSOAPGateway1にジャンプする。
            msg.getHeader().getParameter().put(
               ESIHeaderConstants.ESI_HEADER_KEY_JUMP, "SOAPGateway1");
        } else if ("FAULT".equals(result)) {
            // (3) シーケンスの終わりにジャンプする。
            msg.getHeader().getParameter().put(
               ESIHeaderConstants.ESI_HEADER_KEY_JUMP,ESIHeaderConstants.ESI_HEADER_VALUE_JUMP_EXIT);
        }
    }
        :
        :
}
  1. 引数の取得
    ジャンプ先を設定するために共通メッセージを引数として取得します。

  2. ステップ名指定によるジャンプ先設定
    以下のキー名と値を指定し、共通メッセージのヘッダに格納します。

    • キー名:“ESIHeaderConstants.ESI_HEADER_KEY_JUMP”

    • 値:ステップ名(サンプルプログラムではSOAPGateway1)

  3. シーケンスの終わりへのジャンプ設定
    以下のキー名と値を指定し、共通メッセージのヘッダに格納します。

    • キー名:“ESIHeaderConstants.ESI_HEADER_KEY_JUMP”

    • 値:“ESIHeaderConstants.ESI_HEADER_VALUE_JUMP_EXIT”

サンプルプログラムは、以下に格納されています。


“<INSDIR>\sample\App\src”


“/opt/FJSVesi/sample/App/src”
クライアント “<INSDIR>\sample\App\src”

Javaのサンプルプログラムは、JDK1.4互換ソースのため、JDK5.0以上でコンパイルした場合に警告が発生することがありますが、動作に問題はありません。
なお、上記に格納されている“Calculator.java”については、“3.3 ユーザプログラム呼出しの概要”を参照してください。