Гость
Форумы / Java [игнор отключен] [закрыт для гостей] / Заюзать EJB через локальный интерфейс на той же машине / 5 сообщений из 5, страница 1 из 1
31.03.2004, 11:53
    #32463553
JUser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заюзать EJB через локальный интерфейс на той же машине
Не знаю, возможно я не совсем правильно понял доку, но вопрос в следующим

Можно ли работать с EJB из моего приложения через локальный интерфейс если мое приложение JSP страница или GUI приложение на той же машине?

Если да, то как, если нет, то почему?
...
Рейтинг: 0 / 0
31.03.2004, 12:24
    #32463637
Грасоff
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заюзать EJB через локальный интерфейс на той же машине
Если да

можно. как - писать много. счас ссылку кину.
...
Рейтинг: 0 / 0
31.03.2004, 12:29
    #32463650
big_mammoth
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заюзать EJB через локальный интерфейс на той же машине
не просто на той же машине а на той же виртуальной машине Java
решается как я понял это следующем образом

делаешь war архив в котром лежит твое WEB приложение которое использует локальные интерфейсы, делаешь JAR в котром лежат EJB -собираешь из всего этого дела EAR архив и деплоишь на сервер

У меня получалось использовать локальные интерфейсы на BES 5.2 без формирования EAR при перенастройке политики загрузки классов для партиции c per_module на container, иначе на операциях типа

CustomerHome home = (CustomerHome) ctx.lookup(....)

вываливалось ClassCastException из-за того что для WEB приложения и EJB модуля использовались разные загрузчики классов
...
Рейтинг: 0 / 0
31.03.2004, 13:12
    #32463762
JUser
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заюзать EJB через локальный интерфейс на той же машине
Вообще код для получения локального интерфейса Бина из другого бина выглядит так

Код: plaintext
1.
2.
Context initial = new InitialContext();
Object objref = initial.lookup( "java:comp/env/ejb/CalcEngineLocalHome" );
CalcEngineLocalHome home = (CalcEngineLocalHome)objref;


Однако если я так пытаюсь обратиться из моего приложения, говорит что объект не найден или что нет привязки к comp/env/ejb/CalcEngineLocalHome.
...
Рейтинг: 0 / 0
31.03.2004, 17:35
    #32464501
big_mammoth
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заюзать EJB через локальный интерфейс на той же машине
Если у Вас есть два J2EE модуля и вы хотите пользоваться локальными интерфейсами одного модуля в другом то должно быть следующее

1) Оба модуля работают в одной JVM
2) Используется один и тот же загрузчик классов для обоих модулей

либо эти модули нужно собирать в один EAR архив - тогда эти два условия будут точно обеспечены

В любом случае потребется прописывать локальные интерфейсы
в дескрипторы развертывания, причем для BES 5.2 в случае использования локального интерфейса EJB допустим из сервлета в или из другого EJB расположенного в другом модуле нужно прописывать в дискрипторах развертывания локальное JNDI имя (имеются ввиду дескрипторы специфичные для производителя ejb-borland.xml или web-borland.xml)

Из GUI приложения обратится к локальным интерфейсам врядли получится - оно же будет работать под управлнием другой JVM
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Заюзать EJB через локальный интерфейс на той же машине / 5 сообщений из 5, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]