-
2008-12-01
TAO tips - [工作学习]
版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://jimsu.yourblog.org/logs/3035155.html
最近,在做corba相关的东东,用到了jacorb,tao,此处把tao的几个要点记下来。
1,编译问题: ACE+TAO-5.6.5不支持用vc6编译的,如果仅有vc6的环境,建议使用ACE-5.5+TAO-1.5。btw,看来vc6是末路黄花了,想当年vc6是多么的让多少人向往呀,现在已经被eclipse, vs2008, 甚至source insight代替。
2,TAO编译好后,里面最主要的lib都在%ACE_ROOT%\lib下,idl编译器tao_idl.exe在%TAO_ROOT%\bin下,主要服务比如Naming_Service与Notify_Service都是在%TAO_ROOT%\orbsvcs下,可以分别编译各自工程,编译好后都在各自工程的release下。
3,使用vc6使用TAO编写corba程序,可以参照%TAO_ROOT%\tests\Hello工程为例,逐步扩充为自己的工程,尤其要注意idl文件编译的设置,同时template files应该不被build。
4,TAO下启动Naming_service,假定绑在4600端口上: Naming_Service -m 0 -ORBEndpoint iiop://localhost:4600 , 可以使用nslist -ORBInitRef NameService=corbaloc::localhost:4600来查看到底绑定了哪些对象。
5,TAO下启动Notification_service,假定绑在4700端口上: Notify_Service.exe -ORBInitRef NameService=corbaloc::localhost:4600/NameService -ORBEndPoint iiop://localhost:4700 ,ntfy是缺省绑定在NotifyEventChannelFactory名字上的,如果通过EventChannelFactoryHelper.narrow(orb.string_to_object("corbaloc::localhost:4700/NotificationService"));无法获取到EventChannelFactory,那就可以通过nameservice的NotifyEventChannelFactory名字获取到ntfy服务工厂。
6,在互通性方面,经过tao与jacorb的测试,发现naming service上都ok,但是tao的notify service有一些尚未实现的接口,比如pull接收模式下的都不能支持,如CosNotifyChannelAdmin::StructuredProxyPullSupplier,这让人很郁闷。具体的可以参考tao的releasenotes中Notification feature matrix,或者在线参考http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/TAO/docs/releasenotes/notify.html
随机文章:
spring mvc单元测试 2007-08-14关于cisco netflow 2006-02-23关于SAN、FC的一些了解 2006-01-20数据包特征与流量安全 2005-07-01
收藏到:Del.icio.us





