Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Работа с сетью > CORBA Клиент-Сервер.


Автор: megama5 15.2.2010, 13:32
Добрый день.

На данный момент реализовано клиент-сервер приложение с использованием программного шлюза. Клиент написан да Delphi, сервер реализован на Java
При коннекте клиента к ORBD клиент коннектится к программному шлюзу на своей локальной машине по адресу 127.0.0.1:11500 строкой кода 
Код
ORB.StringToObject('corbaname::1.0@127.0.0.1:11500#serverUnit1')
 
программный шлюз имеет свой канал на сервер и на низком уровне транслирует запрос на сервер. На серверной стороне запущен серверный программный шлюз, который
получает сообщение от клиентского программного шлюза и передаёт его дальше на ORBD по адресу 127.0.0.1:11501. ORBD запущен строкой
Код
java com.sun.corba.se.internal.Activation.ORBD -defaultdb orbd_database -ORBInitialHost 127.0.0.1 -ORBInitialPort 11501 -ORBDebug orbd
 
Соеденение проходи нормально. ORBD возвращает клиенту ссылку на серверный объект в виде IOR. 

Только проблема в том, что ORBD отвечает клиенту не адрес 127.0.0.1:11501 серверного программного шлюза от которого пришёл этот запрос , а на адрес сетевого интерфейса клиентского приложения, т.е. мимо
програмного шлюза.

Как я понимаю ORB клиента общается с ORBD сервера через IOR ссылки... можно ли настроить ORBD сервера, чтобы он отвечал на тот сетевой адрес, от которого он получил запрос? 
Буду очень рад любым идеям по-этому вопрос

заранее спасибо

Автор: megama5 17.2.2010, 18:25
решение было организовано следующим образом:
1. Отказался от naming service (ORBD)
2. IOR ссылку получаю через сокет с Java сервера на Dilphi клиент.
3. Полученную IOR преобразую в необходимый объект

Зачем так сложно? потому что CORBA даёт возможность лекго организовавыть функции и передавать различные структуры + DELPHI клиент.

Если вдруг каму-то надо что-то по коду - пишите в личку

П.С. Чтобы я еще раз завязался с DELPHI.... smile 

Автор: COVD 17.2.2010, 18:41
Цитата

Чтобы я еще раз завязался с DELPHI


На мой взгляд, более продуктивным был бы вывод не "организовавыть функции". Ни легко, ни сложно. 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)