У меня есть существующий проект, который мне нужно настроить по-другому. Это должно происходить без серьезных изменений кода. Я действительно надеюсь, что смогу как-то сделать это только с конфигурацией. Последние 2-3 дня я читал все, что мог найти по этому вопросу. Я понимаю загрузчики классов Glassfish и то, что мне доступно.
У меня есть текущий пример проекта, в котором есть EJB, определяющий интерфейс @Local. Ejb развертывается внутри ejb-модуля как ejb-модуль в домене glassfish. Теперь я пытаюсь найти способ для другого приложения, которое было развернуто в качестве уха в том же домене, чтобы иметь возможность получить доступ к этому EJB через его локальный интерфейс.
Я прочитал документацию, в которой говорится, что это невозможно. Затем я видел сообщения здесь, в StackOverflow, и другие сообщения в Интернете, в которых говорилось, что это возможно. Но я не могу найти фактического решения.
Проведя расследование, я понял, что @Local EJB не регистрируется на jndi (по крайней мере, согласно журналам), если я использую браузер JNDI Glassfish, я также не вижу его видимым. Поэтому для меня логично, что либо это невозможно, либо развертывание проекта EJB ошибочно, и мне нужно каким-то образом раскрыть его.
@Remote - это возможность, если это можно сделать по ссылке, и без накладных расходов на производительность. Но предпочтительный метод, разрешающий доступ к @Local EJB, действительно является крайней необходимостью.
Кто-нибудь знает, что мне нужно сделать, чтобы предоставить @Local EJB другому приложению? Или это просто невозможно?
Я использую Glassfish 2.1 с EJB 3.0
Если Glassfish 2.1 может обрабатывать EJB 3.1, я был бы готов перейти на него, если бы он предоставлял такую возможность, но я сомневаюсь, что это так просто.
Пожалуйста помогите. Спасибо.
Я добавляю награду. Чтобы завершить награду, потребуется запустить 2 ушных приложения в одном домене, где A.ear содержит @Local EJB, который также используется приложением в B.ear.