WebSphere Application Server - Express for i5/OS, Version 6.1   
             オペレーティング・システム: i5/OS

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

Java Management Extensions インターオペラビリティー

WebSphere Application Server バージョン 6 を開始すると、 Java Management Extensions (JMX) バージョン 1.2 がインプリメントされ、WebSphere Application Server バージョン 5 は JMX バージョン 1.0 をインプリメントします。

バージョン 5 とバージョン 6 の違い

JMX 仕様の発展により、 javax.management.ObjectName オブジェクトなどの JMX オブジェクトのシリアライゼーション・フォーマットは、 V5 インプリメンテーションと V6 以降のインプリメンテーション間で異なります。V6 以降の JMX ランタイムは、通信対象であるクライアントのバージョンが識別できるように 拡張されています。V6 以降のランタイムは、これらの非互換性のシリアライズされたフォーマットで 適切な変換を行い、違うバージョンのランタイムでの通信に対応しています。

V5 wsadmin スクリプトまたは V5 管理クライアントは、 V6 以降のサーバーを呼び出すことができます。V6 以降の wsadmin スクリプトまたは V6 以降の 管理クライアントは V5 サーバーを呼び出すことができます。

V5 wsadmin スクリプトまたは V5 管理クライアントは V6 以降の MBean を呼び出した場合、V6 以降における新規のクラスは V5 環境には存在しないため、 そのクラスのインスタンスを V5 に渡すことはできません。問題はほとんど発生しません。ただし、例外が、 V6 で開始する新規のネストされた例外を組み込む場合には通常問題が発生します。この症状は通常、シリアライゼーションの例外か、NoClassDefFoundException 例外です。

JMX インプリメンテーションにおける V5 から V6 への変更が原因で、 MBean のメソッドが V6 以降用としてではなく V5 用として呼び出された場合に、 さまざまな例外が生じます。例えば、メソッドが V5 に対して不明の属性を取得または設定した場合、 MBeanRuntimeException 例外が作成されます。メソッドが V6 以降に対して不明の属性を取得または設定した場合、 ServiceNotFoundException 例外をラップする MBeanException 例外が 作成されます。

MBean 呼び出し中にパラメーターまたは戻り値として渡されるか、または通 知の一部として送信されるシリアライズ可能なインターフェースをインプリメントするユーザー定義クラスのインスタンスには、 javax.management.package パッケージにある一時的でないインスタンス変数を組み込むことができません。 インスタンスにこの変更が組み込まれると、 V5 ランタイムと V6 以降のランタイムとの間で渡された場合に、 適切にデシリアライズできません。

V5 と V6 では、ObjectName クラスのサポートされるフォーマットが変更されるため、 V6 開始における構成 ID は垂直バー (|) を含むようになります (V5 ではコロン (:) を含んでいました)。この変更は、wsadmin クライアントの出力に反映されます。 例えば、V5 クライアントの場合の出力は、以下のようになります。
wsadmin>  $AdminConfig list Cell
     DefaultCellNetwork(cells/DefaultCellNetwork:cell.xml#Cell_1)
一方、V6 以降のクライアントの出力は、以下のようになります。
wsadmin>  $AdminConfig list Cell
     DefaultCellNetwork(cells/DefaultCellNetwork|cell.xml#Cell_1)
構成 ID は動的に生成されるため、通常、構成 ID での変更は問題になりません。 V5 クライアントからコロンを含む構成 ID が渡された場合、 JMX ランタイムは、上位互換性によって、コロンを含む構成 ID を垂直バーを含む構成 ID に自動的に変換します。 同様に、後方互換性によって逆の変換も実行されます。

保管しておいた構成 ID を、後で使用しないでください。 ID の照会のみを行い、その ID を使用してください。

バージョン 6.1 とバージョン 6.0.x の違い

JMX インプリメンテーションでは、V6.1 リリースと V6.0.x リリースの間で、 シリアライゼーション・フォーマットがミスマッチします。V6.0.x wsadmin スクリプトまたは V6.0.x 管理 クライアントが V6.1 MBean の ModelMBeanInfo インターフェースを検索しようとする場合、 期待されるフィールド名は、バージョン間で大/小文字が異なるために、デシリアライズされたオブジェクト内で 検出されません。例えば、V6.0.x wsadmin スクリプトが V6.1 サーバーに接続している場合、次の wsadmin 関数は 機能しません。
$Help attributes MBeanObjectName$Help operations MBeanObjectName
$Help all MBeanObjectName
ここで、MBeanObjectName は、 V6.1 MBean オブジェクトのストリング表記です。
この問題を回避するには、管理コンソールで、 JVM カスタム・プロパティー・ページの jmx.serial.form Java 仮想マシン (JVM) カスタム・プロパティーを 設定します。V6.0.x クライアントから接続している V6.1 Application Server 上で、名前値ペアを指定することによって、カスタム・プロパティーを 作成します。フィールド名は、 V6.0.x クライアントとの互換性を持つために、強制的に小文字になります。小文字のフィールド名は、 JMX 仕様と矛盾し、将来のバージョンとのインターオペラビリティーを解決します。 そのため、このプロパティーは、混合したバージョン環境で絶対に必要な場合にのみ 設定することをお勧めします。
プロパティー名 jmx.serial.form
データ型 ストリング
1.2.0 または 1.2.1
JVM カスタム・プロパティー・ページにアクセスするには、次のようにクリックします。

「サーバー」>「アプリケーション・サーバー」 >server1」。. 次に、「サーバー・インフラストラクチャー」で、「Java およびプロセス管理」 > 「プロセス定義」 > 「Java 仮想マシン」 > 「カスタム・プロパティー」 をクリックします。




関連タスク
管理プログラムの使用 (JMX)
概念トピック    

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

最終更新: Jan 21, 2008 7:05:28 PM EST
http://publib.boulder.ibm.com/infocenter/wasinfo/v6r1/index.jsp?topic=/com.ibm.websphere.express.iseries.doc/info/iseriesexp/ae/rjmx_interoperability.html