Ne használjon WebLogic rendszerre jellemző JNDI tulajdonság értékeket vagy a t3 protokollt

A használt WebLogic-ra jellemző elnevezési tulajdonságokat el kell távolítania vagy felül kell írnia, amikor az IntialContext-et lekérdezi alkalmazásában. Az átállítási eszköz a következő tulajdonságértékeket keresi a Java, XML és tulajdonságfájlokban: weblogic.jndi.WLInitialContextFactory, t3://.* and t3s://*. Ha például egy alkalmazás megadja az alábbi tulajdonságokat, akkor az eszköz a vörössel megjelenített szöveget fogja megjelölni:

Liberty

Java fájlok

Amikor alkalmazását Liberty kiszolgálóra helyezi át, ne adjon meg kezdeti kontextusgyártót vagy szolgáltató URL címet a InitialContext konstruktornak átadott tulajdonságokban. Használja az üres konstruktort kivéve, ha más elnevezési tulajdonságok is be lesznek állítva.

Az alábbi példa olyan alkalmazáskódot mutat be, amit a szabály Liberty platformra végzett áttéréskor meg fog jelölni:


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

Távolotísa el a szükségtelen tulajdonságokat saját kezűleg:


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

XML fájlok

A java fájok megjelölésén kívül az eszköz megjelöli a WebLogic tulajdonságértékeket tartalmazó xml fájlokat is. Liberty esetén a tulajdonságokat el kell távolítani, hogy az alapértelmezett InitialContext inicializálási értékek kerüljenek felhasználásra.

Tulajdonságfájlok

A java és xml fájok megjelölésén kívül az eszköz megjelöli a WebLogic tulajdonságértékeket tartalmazó tulajdonságfájlokat is. Liberty platformon a tulajdonságokat el kell távolítani.

hagyományos WebSphere Application Server

Java fájlok

Hagyományos WebSphere Application Serverre történő áttéréskor a korábban említett WebLogic tulajdonságok lesznek megjelölve. A forráselemzőben van egy gyorsjavítás a Java fájlokhoz, amely a WebLogic elnevezési tulajdonságértékeket olyan értékekre módosítja, amelyek működnek a hagyományos WebSphere Application Server környezetben:

Az alábbi példa olyan alkalmazáskódot mutat be, amit a szabály WebSphere Application Server platformra végzett áttéréskor meg fog jelölni:


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

A korábban bemutatott példát használva, a hagyományos WebSphere Application Server Java gyorsjavításának futtatása után a kód a következőképpen lesz átállítva:


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

Megjegyzés: A gyorsjavítás az alapértelmezés rendszerbetöltő portot (2809) használja az összes t3 URL címhez, az SSL 't3s://' URL címket is beleértve. Ellenőrizze kiszolgáló beállításait és győződjön meg róla, hogy minden URL címhez a helyes portot használja. További információkért olvassa el a Hagyományos WebSphere Application Server portszám beállításai című cikket.

A hagyományos WebSphere Application Server környezetre történő átálláskor a másik lehetőség a tulajdonságok eltávolítása és az üres InitialContext() konstruktor használata.

Figyelmeztetés: A gyorsjavítás csak literálokat módosít. Ha az URL címet változók használatával állították össze, akkor saját kezűleg kell azt átállítani.

Változó példa a gyorsjavítás előtt:

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

Változó példa a gyorsjavítás után:

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

...

String port = "7001";
ht.put("java.naming.provider.url", "corbaloc:iiop:localhost:" + port);

InitialContext ctx = new InitialContext(ht);
}

Figyelje meg, hogy a port karaktersorozat változó nem változott. Győződjön meg róla, hogy minden ilyen változó át lett állítva.

Az alábbi példa az XML kódra alkalmazott hasonló módosításokat mutat be.

XML kód a gyorsjavítás futtatása előtt:

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

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

XML kód a gyorsjavítás futtatása után:

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

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

Tulajdonságfájlok

Bár az átállítási eszköz ellenőrzi a tulajdonságfájlokat, a névgyártó és -szolgáltató jat nem állítja át gyorsjavítás. Hagyományos WebSphere Application Server esetén távolítsa el a tulajdonságokat vagy módosítsa azokat a WebSphere elnevezési tulajdonság értékekre.

Lásd még a Hordozható JNDI tulajdonságértékek használata szabályt.