请问哪位对ucs 做corba测试非常了解的专家。急啊~~

yehangdx 2013-05-13 11:24:09
CORBA 服务端扩展这块不太明白,我已经启动命名服务,获取了ior文件,并可以正确连接,但是我在服务端扩展那块需要写一些代码,
/** 网管管理器对象 */
private EMSMgr_I emsMgr;
/** 网元管理器 */
private ManagedElementMgr_I meMgr;
/** 子网管理器 */
private MultiLayerSubnetworkMgr_I snMgr;
/** 设备管理器 */
private EquipmentInventoryMgr_I eiMgr;

emsMgr.getEMS(ems_THolder);// 得到系统信息---------------------------------------------有
meMgr.getAllManagedElements(HOWMANY, list, it)----得到所有网元-----------有
meMgr.getAllPTPs-----所有端口----------------------------有
eiMgr.getAllEquipment-----所有板卡-------------------------有
meMgr.getManagedElement-----板卡下网元
eiMgr.getAllSupportedPTPs---查询设备(板卡)的端口配置-----------------有
meMgr.getAllCrossConnections---交叉-------------------------有
emsMgr.getAllTopLevelTopologicalLinks----顶层拓扑
emsMgr.getAllTopLevelSubnetworkNames---子网名称
snMgr.getAllTopologicalLinks----所有拓扑
factory.getEmsSession(username, password, nmsSession_I,emsSession_IHolder);
这些代码要在服务端正确连接上才可以正确采集,我扩展代码为:
// ------------------Begin----------------------
if(managerName.equals("ManagedElementMgr_I")){
managerInterface="IOR:000000000000004349444C3A6D746E6D2E746D666F72756D2E6F72672F6D616E61676564456C656D656E744D616E616765722F4D616E61676564456C656D656E744D67725F493A312E300000000000010000000000000098000102000000000E3139322E3136382E3133372E310022B8000000415374616E64617264496D706C4E616D652F4D6E7124242F5F6D616E61676564456C656D656E744D616E616765725F4D616E61676564456C656D656E744D67725F49000000000000020000000000000008000000004A414300000000010000001C00000000000100010000000105010001000101090000000105010001";
}
else if(managerName.equals("MultiLayerSubnetworkMgr_I")){
managerInterface="IOR:000000000000004849444C3A6D746E6D2E746D666F72756D2E6F72672F6D756C74694C617965725375626E6574776F726B2F4D756C74694C617965725375626E6574776F726B4D67725F493A312E300000000001000000000000009C000102000000000E3139322E3136382E3133372E310022B8000000465374616E64617264496D706C4E616D652F4D6E7124242F5F6D756C74694C617965725375626E6574776F726B5F4D756C74694C617965725375626E6574776F726B4D67725F490000000000020000000000000008000000004A414300000000010000001C00000000000100010000000105010001000101090000000105010001";
}else if(managerName.equals("EquipmentInventoryMgr_I")){
managerInterface="IOR:000000000000003B49444C3A6D746E6D2E746D666F72756D2E6F72672F65717569706D656E742F45717569706D656E74496E76656E746F72794D67725F493A312E300000000000010000000000000090000102000000000E3139322E3136382E3133372E310022B8000000395374616E64617264496D706C4E616D652F4D6E7124242F5F65717569706D656E745F45717569706D656E74496E76656E746F72794D67725F49000000000000020000000000000008000000004A414300000000010000001C00000000000100010000000105010001000101090000000105010001";
}
else if(managerName.equals("EMSMgr_I")){
managerInterface="IOR:000000000000002949444C3A6D746E6D2E746D666F72756D2E6F72672F656D734D67722F454D534D67725F493A312E300000000000000001000000000000008400010200000000103139322E3136382E3133372E3136380000020000000000295374616E64617264496D706C4E616D652F4D6E7124242F5F656D734D67725F454D534D67725F495F31000000000000020000000000000008000000004A414300000000010000001C00000000000100010000000105010001000101090000000105010001";
}
// ------------------End----------------------
可我怎么也执行不了这个代码,那些ior都是各接口的ior,我怎么去执行啊,郁闷好久了,大家熟悉的帮一下啦 ,万分感谢啊
...全文
77 点赞 收藏 3
写回复
3 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
yehangdx 2013-07-03
非常感谢你的回答,对ucs软件还不是很熟悉,问题已经解决了,在ucs中有一个设置要勾选上就可以了!非常感谢!!!
回复
qfsb_p 2013-06-26
CORBA::ORB_var orb; orb = CORBA::ORB_init(argc, argv); CORBA::Object_var obj; obj = orb -> string_to_object("relfile:/Hello.ref"); //IOR if(CORBA::is_nil(obj)) { } Hello_var hello = Hello::_narrow(obj); assert(!CORBA::is_nil(hello));
回复
qfsb_p 2013-06-26
接口的IOR需要narrow出来才能用啊
回复
相关推荐
发帖
其他开发语言
创建于2007-08-27

3381

社区成员

其他开发语言 其他开发语言
申请成为版主
帖子事件
创建了帖子
2013-05-13 11:24
社区公告
暂无公告