Corba命名服务

时间:2011-12-19 18:15:33

标签: corba

我需要一些帮助...

我必须使用一个Java Web服务与ma Corba服务器进行通信... 所以我必须配置命名服务..对吗??

我在端口2809中删除了omniNames并运行代码: tnameserv -ORBport 2809

并给我

初始命名上下文: IOR:000000000000002b49444c3a6f6d672e6f72672f436f734e616d696e672f4e616d696e67436f6e746578744578743a312e300000000000010000000000000096000102000000000a3132372e302e312e3100038400000045afabcb0000000020000f424000000001000000000000000200000008526f6f74504f41000000000d544e616d65536572766963650000000000000008000000010000000114000000000000020000000100000020000000000001000100000002050100010001002000010109000000010001010000000026000000020002 TransientNameServer:初始对象引用的设置端口:900 准备好了。

在我运行server.py并返回异常后:

文件“server.py”,第28行,in     obj = orb.resolve_initial_references(“NameService”)   在resolve_initial_references中输入文件“/usr/lib/python2.7/dist-packages/omniORB/CORBA.py”,第576行     return _omnipy.orb_func.resolve_initial_references(self,identifier) omn​​iORB.CORBA.NO_RESOURCES:CORBA.NO_RESOURCES(omniORB.NO_RESOURCES_InitialRefNotFound,CORBA.COMPLETED_NO)

我必须做什么?

2 个答案:

答案 0 :(得分:1)

我不是Java名称服务的专家,但Corba规范的默认orb是2809。 虽然java的默认值是900.你的名字服务从900开始,就像它告诉你的那样,但omniorb会在2809找它。

Web说tnameserv的语法是:

tnameserv -ORBInitialPort 2809

答案 1 :(得分:0)

首先在终端上运行此命令。 (确保已安装JDK):

orbd -ORBInitialiPort 2809.

之后你必须运行服务器然后运行客户端。