W razie migrowania do serwera Liberty należy używać wartości domyślnych właściwości JNDI java.naming.factory.initial i java.naming.provider.url.
W przypadku tych właściwości następujące wartości serwera WebSphere Application Server traditional są niepoprawne:
java.naming.factory.initial=com.ibm.websphere.naming.WsnInitialContextFactoryjava.naming.provider.url=corbaloc:iiop:localhost:2809Narzędzie do migracji przeszukuje pliki Java i pliki właściwości, znajdując właściwości, o których wspomniano wcześniej.
W plikach jndi.properties klucze właściwości java.naming.factory.initial i java.naming.provider.url są oznaczane niezależnie od wartości.
Jeśli reguła pliku właściwości wykrywa plik jndi.properties, należy sprawdzić właściwości znajdujące się w tym pliku.
Należy usunąć właściwości
java.naming.factory.initial i java.naming.provider.url albo usunąć plik, jeśli żadna z tych właściwości nie jest potrzebna.
W poniższym przykładzie przedstawiono kod aplikacji, który zostanie oznaczony przez tę regułę:
java.naming.factory.initial,
com.ibm.websphere.naming.WsnInitialContextFactory);
java.naming.provider.url,
corbaloc:iiop:localhost:2809);
Gdy jest używany konstruktor InitialContext(Hashtable), należy usunąć te dwie właściwości. Jeśli nie są używane żadne inne właściwości, można użyć konstruktora domyślnego.
Poniższy przykład ilustruje prawidłowe użycie kodu przedstawionego w poprzednim przykładzie:
Gdy jest używany konstruktor InitialContext(Hashtable), należy usunąć te dwie właściwości. Jeśli nie są używane żadne inne właściwości, można użyć konstruktora domyślnego.
Ta reguła ma zautomatyzowaną poprawkę usuwającą te dwie właściwości. Skopiuj konfigurację niestandardową do pliku budowania aplikacji, aby ją włączyć.
Reguła będzie również oznaczała wystąpienie com.ibm.websphere.naming.WsnInitialContextFactory w dowolnym miejscu kodu Java. Usuń ten łańcuch i upewnij się, że nie jest on używany jako część inicjowania klasy InitialContext.