Поиск удаленного интерфейса не распознается в JBoss - PullRequest
0 голосов
/ 25 марта 2010

Следующий код используется IPMBaseBean.class для доступа к удаленному интерфейсу.

Object obj = iniCtx.lookup("java:/comp/env/ejb/ODIControllerSessionEJB");

В jboss-web.xml jndi-name упоминается как ниже

<ejb-ref-name>ejb/ODIControllerSessionEJB</ejb-ref-name>
<jndi-name>jnp://vwhq5275.whq.ual.com:6200/ODIControllerSessionEJB</jndi-name>

Ошибка:

Naming exception 
javax.naming.NameNotFoundException: comp not bound..

Пожалуйста, предложите по этому вопросу.

1 Ответ

0 голосов
/ 18 августа 2010

При запуске JBoss отображаются глобальные имена JNDI, как показано ниже:

 15:26:47,394 INFO  [JndiSessionRegistrarBase] Binding the following Entries in Global JNDI:

        hrms/AccountSummarySessionBean/local - EJB3.x Default Local Business Interface
        hrms/AccountSummarySessionBean/local-com.cc.hrms.bl.accounts.generalaccount.session.AccountSummarySessionBeanLocal - EJB3.x Local Business Interface

Затем вы можете искать, используя это соглашение

подпись поиска - "hrms / AccountSummarySessionBean / local-com.cc.hrms.bl.accounts.generalaccount.session.AccountSummarySessionBeanLocal"

initialContext.lookup(ProjectConstants.PROJECT_NAME+className.getSimpleName().substring(0, className.getSimpleName().lastIndexOf("Local")) + "/local-" + className.getName());

Я работаю в JBoss-5, и это соглашение прекрасно работает для меня.

...