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 以降のランタイムとの間で渡された場合に、 適切にデシリアライズできません。
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 を使用してください。
$Help attributes MBeanObjectName$Help operations MBeanObjectName $Help all MBeanObjectNameここで、MBeanObjectName は、 V6.1 MBean オブジェクトのストリング表記です。
プロパティー名 | jmx.serial.form |
データ型 | ストリング |
値 | 1.2.0 または 1.2.1 |
「サーバー」>「アプリケーション・サーバー」>「server1」。. 次に、「サーバー・インフラストラクチャー」で、「Java およびプロセス管理」
> 「プロセス定義」 > 「Control」 > 「Java 仮想マシン」 > 「カスタム・プロパティー」 とクリックします。
「サーバー」>「アプリケーション・サーバー」
>「server1」。. 次に、「サーバー・インフラストラクチャー」で、「Java およびプロセス管理」 > 「プロセス定義」 > 「Java 仮想マシン」 > 「カスタム・プロパティー」 をクリックします。