CORAB客户端(TAO)如何连接不在本地机器的服务端(很简单,修改配置参数即可)

参考文章:
http://blog.csdn.net/billdavid/article/details/726351
服务端启动完成后,Naming Service就默默在那里工作了,但是,你的servant和client如何访问它呢?


要在Server和Client程序中访问NameService有两种方法:
1、配置InitRef信息:
可以在启动orb时通过-ORBInitRef来定位,如:
-ORBInitRef NameService=IOR:00ff...
或使用corbaname,如:
-ORBInitRef NameService=corbaname::localhost:2809
指定NameService所在地址和端口。
也可采用corbaloc来指定NameService的运行信息,如:
-ORBInitRef NameService=corbaloc:iiop:1.2@localhost:2809/NameService
在这里,corbaloc/corbaname被用于以更具有可读性的方式来定位servant。

eg

	argc=1;
	argv[1] = "-ORBInitRef NameService=corbaloc:iiop:192.168.0.20:5980/NameService";
     
	CORBA::ORB_var orb = CORBA::ORB_init(argc, argv);
	CORBA::ORB_var g_orb = CORBA::ORB::_duplicate(orb.in());

“192.168.0.20”:即开启命名服务的地址,5980即命名服务所监听端口;


2、配置好InitRef后,程序中就可以通过:
orb->resolve_initial_references("NameService");
访问到NameService了。
     访问Naming Service的另一种方式则是传递Naming Service的IOR串,然后通过:
orb->string_to_object(...);
从IOR串连接到相应的Naming Service,因为NameService只不过是一个特殊的servant。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值