アプリケーションで IntialContext を取得する際に使用された WebLogic 固有の命名プロパティーを削除するか置き換える必要があります。
マイグレーション・ツールは、プロパティー値 weblogic.jndi.WLInitialContextFactory、t3://.*、および t3s://* があるかどうか、Java ファイル、XML ファイル、およびプロパティー・ファイルをスキャンします。
例えば、アプリケーションが以下のプロパティーを指定している場合、ツールは赤のテキストにフラグを立てます。
- java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory
- java.naming.provider.url=t3://localhost:7001
- java.naming.provider.url=t3s://localhost:7001
Liberty
Java ファイル
Liberty にアプリケーションを移動する際に、InitialContext コンストラクターに渡されるプロパティーに初期コンテキスト・ファクトリーやプロバイダー URL を指定しないでください。
他の命名プロパティーを設定中でない限り、空のコンストラクターを使用してください。
以下の例では、Liberty にマイグレーションする際にこの規則がマークを付けるアプリケーション・コードを示します。
import java.util.Hashtable;
import javax.naming.InitialContext;
...
void main( String[] args ) {
Hashtable ht = new Hashtable();
ht.put("java.naming.factory.initial", "weblogic.jndi.WLInitialContextFactory");
ht.put("java.naming.provider.url", "t3://localhost:7001");
InitialContext ctx = new InitialContext(ht);
}
以下のように、不要なプロパティーを手動で削除します。
import javax.naming.InitialContext;
...
void main( String[] args ) {
InitialContext ctx = new InitialContext();
}
XML ファイル
Java ファイルにフラグを立てることに加え、ツールは、WebLogic プロパティー値を含む xml ファイルにフラグを立てます。Liberty の場合、デフォルトの InitialContext 初期化値を使用するために、これらのプロパティーを削除する必要があります。
プロパティー・ファイル
Java ファイルと XML ファイルにフラグを立てることに加え、ツールは、WebLogic プロパティー値を含むプロパティー・ファイルにもフラグを立てます。Liberty の場合、これらのプロパティーを削除する必要があります。
WebSphere Application Server traditional
Java ファイル
WebSphere Application Server traditional にマイグレーションするとき、前述の同じ WebLogic プロパティーにフラグが立てられます。 Java。 に自動修正が提供され、 WebLogic のネーミング・プロパティ値が、 WebSphere Application
Server 伝統的なものに変更されます:
- java.naming.factory.initial=com.ibm.websphere.naming.WsnInitialContextFactory
- java.naming.provider.url=corbaloc:iiop:localhost:2809
以下の例では、WebSphere Application Server traditional にマイグレーションする際にこの規則がフラグを立てるアプリケーション・コードを示します。
import java.util.Hashtable;
import javax.naming.InitialContext;
...
void main( String[] args ) {
Hashtable ht = new Hashtable();
ht.put("java.naming.factory.initial", "weblogic.jndi.WLInitialContextFactory");
ht.put("java.naming.provider.url", "t3s://localhost:7001");
InitialContext ctx = new InitialContext(ht);
}
先に示したのと同じ例で、 WebSphere Application Server traditional の自動修正を実行すると、コードは図のように移行される:
import java.util.Hashtable;;
import javax.naming.InitialContext;;
...
void main( String[] args ) {
Hashtable ht = new Hashtable();
ht.put("java.naming.factory.initial", "com.ibm.websphere.naming.WsnInitialContextFactory");
ht.put("java.naming.provider.url", "corbaloc:iiop:localhost:2809");
InitialContext ctx = new InitialContext(ht);
}
注: 自動修正では、SSL ' t3s:// ' URLを含むすべての t3 URLに対して、デフォルトのブートストラップポートである2809が使用されます。 サーバー設定をチェックして、それぞれの URL に対して正しいポートが使用されているか確認してください。 追加情報については、『
WebSphere Application Server traditional のポート番号設定』に関する記事を参照してください。
WebSphere Application Server traditional に移動する際のもう 1 つのオプションは、プロパティーを削除して、空の InitialContext() コンストラクターを使用することです。
警告自動修正はリテラルのみを調整します。 URL が変数を使用して構築されている場合は、手動でマイグレーションする必要があります。
void main( String[] args ) {
Hashtable ht = new Hashtable();
...
String port = "7001";
ht.put("java.naming.provider.url", "t3://localhost:" + port);
InitialContext ctx = new InitialContext(ht);
}
void main( String[] args ) {
Hashtable ht = new Hashtable();
...
String port = "7001";
ht.put("java.naming.provider.url", "corbaloc:iiop:localhost: (corbaloc:iiop:localhost:)「 + ポート);
InitialContext ctx = new InitialContext(ht);
}
ストリング変数 port が変更されなかったことに注意してください。このようなすべての変数を必ずマイグレーションしてください。
以下の例では、XML コードに適用される、類似した変更を示します。
< プロパティー名 = "java.naming.factory.initial"
value="weblogic.jndi.WLInitialContextFactory" />
< プロパティー名 = "java.naming.provider.url"
value="t3://localhost:7001/" />
< プロパティー名 = "java.naming.factory.initial" 値 ="com.ibm.websphere.naming.WsnInitialContextFactory"/>
< プロパティー名 = "java.naming.provider.url" 値 ="corbaloc:iiop:localhost:2809/"/>
プロパティー・ファイル
移行ツールはプロパティファイルをチェックします、 ネーミングファクトリとプロバイダのプロパティは自動修正では移行されません。
WebSphere Application Server traditional の場合は、それらのプロパティーを削除するか、それらを WebSphere 命名プロパティーの値に変更してください。
「移植可能な JNDI プロパティーの値を使用する」の規則も参照してください。