2009-06-11 7 views
3

Я разрабатываю клиент EJB. Сервер EJB (2.1) развертывается как кластер Websphere 6.0. Я занимаюсь поиском jndi после приобретения объекта InitialContent для определенного IP-адреса, используя следующий код:Как настроить поиск EJB в среде websphere clusterd

Hashtable env = new Hashtable(); env.put (Context.INITIAL_CONTEXT_FACTIORY, com.ibm.websphere.naming.WsnInitialContextFactory "); env.put (Context.PROVIDER_URL," IIOP: //111.111.111.111: 222 "); // это IP-адрес одного из серверов кластера

затем мы создаем объект InitialContent Теперь вопрос:.?

Как я сделать поиск поэтому он будет возвращать мне кластер мудрого удаленный интерфейс По кластеру мудрого я имею в виду вызова будет не прямым вызовом на один из EJB-серверов, а на механизм кластера, который знает о кластерных серверах. Этот крик - это основная вещь , но я не могу найти никаких явных документов об этом в Интернете. Любой, кто работал с Websphere 6. 0 скопирована среда EJB?

спасибо.

ответ

1

Несмотря на то, что вы указываете на один элемент кластера для поиска, созданный EJB может находиться где угодно в кластере. На самом деле, у меня когда-то была проблема с этим, потому что мне нужно было получить компонент в одном члене, и я не мог найти способ гарантировать, что он будет локальным. Это может дать еще некоторое представление:

https://www.ibm.com/support/knowledgecenter/beta/en/SSAW57_9.0.0/com.ibm.websphere.nd.multiplatform.doc/ae/rnam_example_prop3.html

3

Пробовали ли вы это как URL провайдера,

corbaloc::cluster_host1:RMI_PORT_NO,:cluster_host2:RMI_PORT_NO 

Заменить cluster_host1 с вашим именем кластера и RMI_PORT_NO с RMI номер порта, как 9811 или 2809.