wildfly-8.1.0.Final Не удалось создать экземпляр InitialContextFactory
Я получаю следующую ошибку
**ERROR:**
2014-10-07 16:33:46,692 ERROR [stderr] (default task-1) javax.naming.NamingException:
JBAS011843: **Failed instantiate** **InitialContextFactory
org.jboss.naming.remote.client.InitialContextFactory** from classloader
ModuleClassLoader for Module "deployment.wildfly8.1.ear.wildfly8.1-war.war:main"
from Service Module Loader [Root exception is java.lang.ClassNotFoundException:
org.jboss.naming.remote.client.InitialContextFactory from [Module
"deployment.wildfly8.1.ear.wildfly8.1-war.war:main" from Service Module Loader]]
Код:
final Properties env = new Properties();
env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.remote.client.InitialContextFactory");
env.put(Context.PROVIDER_URL, "127.0.0.1");
//OR env.put(Context.PROVIDER_URL, "http-remoting://127.0.0.1");
env.put(Context.SECURITY_PRINCIPAL, "admin");
env.put(Context.SECURITY_CREDENTIALS, "password");
context = new InitialContext(env);
2 ответа
Попробуйте добавить jboss-deployment-structure.xml
к META-INF
файла верхнего уровня .ear. в jboss-deployment-structure.xml
добавить зависимость для org.jboss.remote-naming
а также org.jboss.ejb-client
,
Вот немного документации по jboss-deployment-strucure.xml
: Загрузка классов в WildFly
Другие полезные ссылки:
Вызовы EJB из экземпляра удаленного сервера
ejb-multi-server: связь EJB между серверами
Вам нужно будет включить в свой каталог war/WEB-INF/lib все зависимости удаленного клиента:
<dependency>
<groupId>org.wildfly</groupId>
<artifactId>wildfly-jms-client-bom</artifactId>
<version>${version.wildfly}</version>
<type>pom</type>
</dependency>