как использовать файл свойств jndi для использования службы, развернутой на удаленном сервере - PullRequest
0 голосов
/ 13 февраля 2019

У меня есть серверный ejb (ofc развернут на сервере), и я хочу использовать его в другом клиентском приложении ejb, добавив его в качестве зависимости и затем вызвав его в основной функции.
Вот код:

package mavensayhelloclient;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import sayhellopackage.SayhelloRemote;

public abstract class Testclient {

public static void main(String[] args) throws NamingException {
    // TODO Auto-generated method stub
    InitialContext cx = new InitialContext();
    Object obj = 
    cx.lookup("mavensayhelloproject/Sayhello!sayhello
    package.SayhelloRemote");
    SayhelloRemote proxy = (SayhelloRemote) obj;
    System.out.println(proxy.sayHello("4infoB2"));
}

}

Я использую файл jndi proprety, который находится в пакете src / main / resources (проект maven):

java.naming.factory.initial=org.jboss.naming.remote.client.InitialContextFactory
java.naming.provider.url=http-remoting://localhost:18080
jboss.naming.client.ejb.context=true

Но я получаю следующее исключение:

Исключение в потоке "main" javax.naming.NoInitialContextException: необходимо указать имя класса в среде или свойстве системы, либо в качестве параметра апплета, либо в файле ресурсов приложения: java.naming.factory.initial

1 Ответ

0 голосов
/ 25 марта 2019

Если у вас есть какие-то странные ошибки с eclipse, перейдите в ваш проект:

1) удалите .settings и .profile и .classpath

2) удалите проект из рабочей области

3) импортировать проект как maven проект

...