Nepoužívat hodnoty vlastností JNDI specifické pro server WebLogic nebo protokol t3

Musíte odebrat nebo nahradit vlastnosti pojmenování specifické pro WebLogic používané při získávání kontextu IntialContext v aplikaci. Nástroj migrace prochází soubory Java, XML a soubory vlastností pro hodnoty vlastností: weblogic.jndi.WLInitialContextFactory, t3://.* a t3s://*. Pokud například aplikace zadá následující vlastnosti, označí tento nástroj červený text:

Liberty

Soubory Java

Při přesunu aplikace na server Liberty nezadávejte počáteční kontextovou továrnu nebo adresu URL poskytovatele do vlastností předaných konstruktoru InitialContext. Použijte prázdný konstruktor, dokud nejsou nastaveny jiné vlastnosti pojmenování.

Následující příklad ilustruje kód aplikace, který toto pravidlo označí při migraci na server 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);
}

Ručně odeberte nepotřebné vlastnosti:


import javax.naming.InitialContext;
...
void main( String[] args ) {
InitialContext ctx = new InitialContext();
}

Soubory XML

Kromě označení souborů java nástroj označí soubory xml obsahující hodnoty vlastností WebLogic. V případě serveru Liberty by vlastnosti měly být odebrány, aby bylo možné použít výchozí inicializační hodnoty InitialContext.

Soubory vlastností

Kromě označení souborů java a xml nástroj označí soubory vlastností obsahující hodnoty vlastností WebLogic. V případě serveru Liberty by měly být vlastnosti odebrány.

WebSphere Application Server traditional

Soubory Java

Při migraci na server WebSphere Application Server traditional budou označeny stejné vlastnosti WebLogic uvedené dříve. Pro soubory Java bude k dispozici automatická oprava která změní hodnoty vlastností pojmenování WebLogic na hodnoty, které fungují v tradičních souborech WebSphere Application Server :

Následující příklad ilustruje kód aplikace, který toto pravidlo označí při migraci na server 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);
}

Na stejném příkladu, který jsme uvedli dříve, bude po spuštění automatické opravy pro WebSphere Application Server tradiční kód přenesen podle obrázku:


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);
}

Poznámka: Automatická oprava použije pro všechny adresy URL t3, včetně adres URL SSL ' t3s:// ', výchozí zaváděcí port 2809. Zkontrolujte nastavení serveru a ujistěte se, že je pro každou adresu URL použit správný port. Další informace viz článek Nastavení čísel portů pro server WebSphere Application Server traditional.

Jinou možností při přesunu na server WebSphere Application Server traditional je odebrání vlastností a použití prázdného konstruktoru InitialContext().

Varování : Automatická oprava upraví pouze literály. Je-li adresa URL sestavena pomocí proměnných, bude nutné ji migrovat ručně.

Proměnný příklad před:

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);
}

Příklad proměnné po:

void main( String[] args ) {
Hashtable ht = new Hashtable();

...

String port = "7001";
ht.put("java.naming.provider.url", "corbaloc:iiop:localhost:" V této + přístav);

InitialContext ctx = new InitialContext(ht);
}

Všimněte si, že řetězcová proměnná port nebyla změněna. Ujistěte se, že všechny takové proměnné jsou migrovány.

Následující příklad ilustruje podobné změny použité pro kód XML.

Kód XML před :

< property name= "java.naming.factory.initial" value="weblogic.jndi.WLInitialContextFactory" />

< property name= "java.naming.provider.url" value="t3://localhost:7001/" />

Kód XML po:

< property name= "java.naming.factory.initial" hodnota="com.ibm.websphere.naming.WsnInitialContextFactory"/>

< property name= "java.naming.provider.url" hodnota="corbaloc:iiop:localhost:2809/"/>

Soubory vlastností

Zatímco migrační nástroj kontroluje soubory vlastností, vlastnosti továrny na pojmenování a zprostředkovatele nejsou migrovány automatickou opravou. Pro server WebSphere Application Server traditional buď odeberte vlastnosti, nebo je změňte na hodnoty vlastností pojmenování WebSphere.

Viz také pravidlo Použít hodnoty vlastností přenosného rozhraní JNDI.