Как уже отмечалось, JBoss сервер имен по умолчанию прослушивает порт 1099. Поэтому, если вы не изменили это значение в conf/jboss-service.xml
(имя службы jboss:service=Naming
), вы должны написать:
env.put(Context.PROVIDER_URL,"jnp://localhost:1099);
При этом я обычно предпочитаю указывать настройки среды JNDI в файле jndi.properties
(который вы помещаете в путь к классам). В вашем случае со следующим содержанием:
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.provider.url=localhost:1099
И использовать пустой конструктор параметров InitiatContext()
:
Context context = new InitialContext();
Это делает код переносимым (может не быть проблемой в контексте тестирования, ну, я предпочитаю не жестко кодировать такие вещи).