对象管理体系结构:CORBA 所基于的概念框架是对象管理体系结构(Object Management Architecture,OMA) ,OMA 描述了一个基于 CORBA 的应用系统的基本结构与构成系统的构件的特性。
2对象请求代理:(Object Request Broker,ORB)是OMA的核心基础设施,CORBA规范
规定了 ORB的标准体系结构。ORB 负责完成查找请求的对象实现、让对象实现准备好接收
请求、传递构成请求的数据等完成远程调用时底层通信任务所需的全部机制。
3 CORBA互操作
CORBA 的目标是支持多个层次的可互操作性,CORBA 规范经过多次改进与发展才达
到这一目标。CORBA支持在可互操作性主要包括如下几个层次:
(1). 不同平台(如操作系统)与语言之间的可互操作性:这是早期的 CORBA 版本强
调解决的主要问题, 解决方法包括制定IDL标准以及IDL到程序设计语言的映射。
这使得使用同一供应商的 ORB 产品开发的客户程序与服务程序之间可以交互, 但
使用不同供应商的 ORB产品开发的客户程序与服务程序则未必是可互操作的。
(2). 不同厂商 ORB 产品之间的可互操作性:CORBA 2.0 版引入了GIOP 和 IIOP,从而
实现了不同供应商的 ORB 产品之间的可互操作性,所有供应商的 ORB 产品如果
与 CORBA 2.0 兼容则彼此之间可互操作。
(3). 不同体系结构之间的可互操作性:更完善的可互操作性还应包括不同体系结构之
间的可互操作, 例如一个CORBA对象可通过协议桥接操作一个DCOM对象, OMG
通过引入ESIOP来解决这一问题。 但ESIOP只能解决CORBA与特定体系结构 (如
DCOM)之间的互操作,并不能通过一套 ESIOP解决所有的问题。
4 CORBA开发过程
(1)编写分布式对象的接口,利用OMG的IDL编写对象的规格说明,放到一个文本文件中称为IDL文件。
(2).编译IDL文件生成桩与框架,IDL编译器为IDL文件中定义的每一个接口自动生成7个.java文件。
(3).编写对象实现,CORBA应用程序的对象实现最常用、最简单的实现方式是使用继承
(4.)编写服务程序,典型的服务
程序通常执行以下步骤:
① 初始化对象请求代理(ORB) 。
② 用所需策略创建一个可移植对象适配器(POA) 。程序中的BankPOA是我们为 POA
起的名字,客户程序必须使用相同的 POA名字。
③ 创建一个提供服务的伺服对象。伺服对象是服务端的本地对象,当伺服对象通过对
象适配器注册到 ORB 后,就成为一个可供远程调用的 CORBA对象。
④ 激活新创建的伺服对象,即利用 POA 将伺服对象以一个字符串表示的标识注册到
ORB 上。
⑤ 激活 POA管理器
⑥ 等待客户程序发来请求。
(5). 编写客户程序
① 初始化 ORB。
② 绑定到一个对象。
③ 通过调用对象上的方法
(6)编译应用程序
(7).运行应用程序
(8).互操作尝试
5.设计POA策略