Удаленный вызов EJB между автономными JVM IBM Websphere на одном хосте

У меня есть 2 автономных сервера IBM WebSphere, работающих на одном хосте. На обоих серверах развернут один и тот же EJB, но наш код распределен между двумя EAR в качестве ClientAgent и сервисов соответственно. При вызове любого метода службы из clientAgent, то есть вызова EJB с serverA на serverB, происходит сбой с ошибкой classnotfound. Я открыл трассировку NamingService для диагностики проблемы и обнаружил, что ServerB использует то же пространство имен JNDI, что и ServerA.

Как я могу заставить ServerB использовать собственное пространство имен JNDI?

Примечание: - С ServerA и ServerB на разных хостах все работает нормально.

Спасибо Шивам


person Shivam    schedule 19.01.2012    source источник


Ответы (1)


Ваш вопрос кажется непонятным. Вы заявили «Сервер B использует то же пространство имен JNDI, что и сервер A».

Что ты имеешь в виду?

Каждый сервер имеет собственное пространство JNDI, где EJB и другие ресурсы или зарегистрированы.

Обратите внимание, что вы обычно подключаетесь к порту начальной загрузки сервера, чтобы подключиться к пространству имен JNDI. Значение по умолчанию - 2809, скорее всего, порт начальной загрузки сервера A - 2809.

Сервер B будет иметь другой, скажем, 2810, и ваш клиентский код должен быть подключен к этому порту.

Я предполагаю, что ваш код использует localhost: 2809, который подключает его к серверу A.

Если вы четко сформулируете проблему, люди, возможно, смогут вам помочь.

HTH

Manglu

person Manglu    schedule 20.01.2012