構成マネージャー・プロキシーを使用した構成マネージャーへの接続

CMP アプリケーションを構成マネージャーに接続して、ブローカー・ドメイン中のリソースに関する要求を送信します。

始める前に

このステップの開始前に、構成マネージャー・プロキシー・アプリケーションの開発および実行用の環境の構成を完了する必要があります。

以下のプログラム、ConnectToConfigManager.java について考慮します。このプログラムは、ローカル・マシンのデフォルトのキュー・マネージャーで実行している構成マネージャーに接続しようとします。
import com.ibm.broker.config.proxy.*;

public class ConfigManagerRunStateChecker {

    public static void main(String[] args) {
        displayConfigManagerRunState("localhost", 1414, "");
    }

    public static void displayConfigManagerRunState(String hostname,
                                                    int port,
                                                    String qmgr) {
        ConfigManagerProxy cmp = null;
        try {
            ConfigManagerConnectionParameters cmcp =
                new MQConfigManagerConnectionParameters(hostname, port, qmgr);
            cmp = ConfigManagerProxy.getInstance(cmcp);
            String configManagerName = cmp.getName();
            
            System.out.println("Configuration Manager '"+configManagerName+
                "' is available!");
            cmp.disconnect();
        } catch (ConfigManagerProxyException ex) {
            System.out.println("Configuration Manager is NOT available"+
                " because "+ex);
        }
    }
}

プログラムの最初の行は、CMP クラスをインポートするように Java に要求します。 すべての CMP クラスは com.ibm.broker.config.proxy パッケージにあります。

displayConfigManagerRunState() メソッドの try ブロック内の最初の行は、ConfigManagerConnectionParameters オブジェクトをインスタンス化します。 このメソッドは、インプリメントしているクラスが構成マネージャーに接続するためのパラメーターを提供できることを述べるインターフェースです。

このインターフェースをインプリメントするクラスは MQConfigManagerConnectionParameters のみです。このクラスは、WebSphere® MQ 接続パラメーターのセットを定義します。ここで使用されるコンストラクターは以下の 3 つのパラメーターを取ります。
  1. 構成マネージャー・マシンのホスト名。
  2. 構成マネージャーWebSphere MQ リスナー・サービスが listen するポート。
  3. 構成マネージャーに関連付けられているキュー・マネージャーの名前。

このオブジェクトを定義したら、上記の特性を持つキュー・マネージャーに接続できます。この接続は、try ブロックの内部にある静的 getInstance() ファクトリー・メソッドによって実現されます。構成マネージャーへの有効なハンドルが取得されると、アプリケーションは構成マネージャーの名前を見付けて (cmp.getName())、それを表示しようとします。

getName() (および、構成マネージャーから情報を要求するその他のメソッド) は、情報が提供されるまでブロックされるか、タイムアウトが発生します。したがって、構成マネージャーが実行していない場合は、アプリケーションが一定の期間、停止します。ConfigManagerProxy.setRetryCharacteristics() メソッドを使用してタイムアウト期間を制御できます。一般に、アプリケーション内の指定されたリソースが初めてアクセスされるときにのみブロッキングが発生します。

最後に、disconnect() メソッドが呼び出されます。 このメソッドにより、CMP と構成マネージャーの両方で、接続に関連したリソースが解放されます。

ConfigManagerProxy ハンドルが getInstance() メソッドから初めて戻されるときに、構成マネージャー サービスが必ずしも実行しているわけではありません。 構成マネージャーを使用した両方向接続がアクティブになっていることをアプリケーションが保証されるのは、(この例では、getName() を呼び出して) アプリケーションがハンドルを使用しようとするときに限ります。

関連タスク
構成マネージャー・プロキシー・アプリケーションの開発および実行用の環境の構成
関連情報
構成マネージャー・プロキシーの API
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009. All Rights Reserved.
最終更新 : 2009-02-13 10:23:15

ae33030_