Используйте свойства JNDI InitialContext по умолчанию

Используйте значения по умолчанию для свойств JNDI java.naming.factory.initial и java.naming.provider.url во время миграции на Liberty. Следующие значения WebSphere Application Server traditional для этих свойств недопустимы:

Инструмент миграции проверяет файлы Java и файлы свойств на наличие указанных выше свойств.

В файлах jndi.properties свойства java.naming.factory.initial и java.naming.provider.url помечаются вне зависимости от значения. Если правило файлов свойств обнаружило файл jndi.properties, проверьте свойства в файле. Либо удалите свойства java.naming.factory.initial и java.naming.provider.url, либо удалите файл, если никакие свойства не нужны.

Пример кода, который будет помечен этим правилом:


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

Если используется конструктор InitialContext(Hashtable), удалите эти свойства. Если другие свойства не используются, можно взять конструктор по умолчанию.

Пример исправления кода из предыдущего примера:


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

Если используется конструктор InitialContext(Hashtable), удалите эти свойства. Если другие свойства не используются, можно взять конструктор по умолчанию.

У этого правила есть автоматическое исправление для удаления этих двух свойств. Скопируйте пользовательскую конфигурацию в файл компоновки приложения, чтобы включить его.

Правило также помечает все упоминания com.ibm.websphere.naming.WsnInitialContextFactory в коде Java. Удалите эту строку и убедитесь, что она не используется для инициализации InitialContext.