1 分布式系统与中间件
1.1 分布式系统的演进 1
1.1.1 集中控制式系统 1
1.1.2 分布式系统 2
1.2 中间件 4
1.2.1 中间件的概念 4
1.2.2 中间件的分类 5
2 CORBA的组成和工作方式
2.1 基本概念15
2.1.1 对象参考模型15
2.1.2 CORBA的基本构件16
2.1.3 对象的引用17
2.1.4 客户和服务器18
2.1.5 接口定义语言18
2.1.6 CORBA对象请求接口的结构20
2.2 CORBA的基本组成21
2.2.1 ORB核心的作用21
2.2.2 客户端码根23
2.2.3 服务器端框架24
2.2.4 动态调用接口25
2.2.5 动态框架接口25
2.2.6 接口库26
2.2.7 实现库26
2.2.8 ORB接口26
2.2.9 对象适配器27
2.3 CORBA的工作方式27
2.3.1 静态调用方式 27
2.3.2 动态调用方式29
2.4 ORB接口30
2.4.1 ORB初始化30
2.4.2 获得初始的对象引用31
2.4.3 ORB中的接口32
2.4.4 获得对象引用的几种方法36
3 接口定义语言
3.1 IDL的语法38
3.1.1 常量38
3.1.2 基本数据类型38
3.1.3 使用typedef定义新的类型41
3.1.4 构造类型41
3.1.5 模板类型43
3.1.6 本地类型 45
3.1.7 模块45
3.1.8 接口46
3.1.9 异常48
3.1.10 操作49
3.1.11 属性50
3.1.12 值类型50
3.3 IDL的例子52
4 IDL语言映射及CORBA编程示例
4.1 IDL语言的C++ 映射53
4.1.1 常量映射53
4.1.2 基本数据类型映射53
4.1.3 构造和模板类型映射60
4.1.4 typedef映射69
4.1.5 Any类型映射69
4.1.6 模块映射71
4.1.7 接口映射76
4.1.8 参数规则传递小结76
4.2 IDL语言的Java映射79
4.3 静态调用方式下的BOA编程示例79
4.3.1 CORBA编程的步骤79
4.3.2 建立IDL接口文件80
4.3.3 编译IDL接口文件81
4.3.4 编写服务器端代码81
4.3.5 编写客户端代码84
4.3.6 运行84
4.4 BOA编程示例的变化方案86
4.4.1 继承和托管86
4.4.2 服务器启动方式87
4.4.3 关闭调试信息87
4.4.4 超时89
4.4.5 使用命名服务91
5 可移植对象适配器
5.1 基本对象适配器存在的问题97
5.2 POA的抽象模型和体系结构100
5.2.1 POA支持的抽象模型100
5.2.2 POA的体系结构101
5.3 POA接口102
5.3.1 创建POA和结束POA 102
5.3.2 策略创建操作103
5.3.3 属性104
5.3.4 仆从管理器操作104
5.3.5 缺省仆从操作104
5.3.6 对象激活与去激活105
5.3.7 创建引用的操作105
5.3.8 标识映射操作规 105
5.4 POA管理器106
5.5 适配器激活器108
5.6 仆从管理器108
5.6.1 仆从激活器110
5.6.2 仆从定位器111
5.7 对象引用与对象激活状态112
5.8 POA策略113
5.9 POA编程115
5.9.1 使用代码生成工具建立CORBA应用115
5.9.2 编写基于POA的CORBA应用119
6 动态调用和接口库
6.1 概述137
6.1.1 动态调用的步骤137
6.1.2 动态调用接口138
6.1.3 接口库141
6.1.4 动态调用的流程实例143
6.2 动态程序调用144
6.2.1 获得Request对象的两种方式144
6.2.2 创建参数列表的三种方式145
6.2.3 发起调用的三种方式148
6.3 动态框架150
6.3.1 伪对象ServerRequest 150
6.3.2 调用的顺序151
6.3.3 动态实现例程153
6.4 接口库154
6.4.1 接口库的特点154
6.4.2 接口库对象155
6.4.3 接口库接口的使用164
6.4.4 类型的描述者TypeCode 164
6.4.5 万能类型Any 168
6.4.6 DynAny 170
7 CORBA的通信模型
7.1 对象引用的传递与解释177
7.1.1 域和桥接177
7.1.2 互操作对象引用的定义179
7.2 通用ORB互通协议181
7.2.1 GIOP三个要素181
7.2.2 公共数据表示传送语法183
7.3 GIOP消息183
7.3.1 GIOP消息头184
7.3.2 Request消息186
7.3.3 Response信息189
7.3.4 CancelRequest消息190
7.3.5 LocateRequest消息191
7.3.6 LocateReply消息192
7.3.7 CloseConnection消息194
7.3.8 MessageError消息194
7.3.9 Fragment消息194
7.4 ORB互通协议195
7.4.1 互联网ORB互通协议196
7.4.2 DCE通用ORB互通协议(DCE-CIOP)197
8 CORBA的服务
8.1 命名服务201
8.1.1 基本概念201
8.1.2 命名环境接口203
8.1.3 迭代器接口中的操作205
8.1.4 名字库206
8.2 CORBA事件服务207
8.2.1 事件服务的概略描述207
8.2.2 无类型消息210
8.2.3 消息通信的全过程214
8.2.4 有类型消息216
8.3 CORBA通知服务219
8.3.1 概述219
8.3.2 过滤机制222
8.3.3 服务质量225
8.3.4 事件类型信息的处理方式228
8.4 对象交易服务229
8.4.1 基本概念229
8.4.2 交易服务的描述237
8.4.3 交易者联盟243
8.5 CORBA对象事务服务254
8.5.1 基本概念254
8.5.2 CORBA的事务服务模型和事务环境258
8.5.3 CORBA事务服务中的接口262
8.5.4 简要的归纳269
9 CORBA技术在电信领域中的应用(一)
9.1 TMN基础272
9.1.1 TMN的概念和目标272
9.1.2 TMN的管理功能273
9.1.3 体系结构274
9.1.4 Q3接口277
9.1.5 TMN的管理业务281
9.2 JIDM定义282
9.2.1 静态翻译部分283
9.2.2 交互翻译部分288
9.3 JIDM实现(OSI部分) 301
9.3.1 概述301
9.3.2 纯CORBA环境下JIDM的实现301
9.3.3 利用JIDM实现关口309
9.3.4 JIDM的指导意义311
10 CORBA技术在电信领域中的应用(二)
10.1 智能网和7号公共信道信令的相关概念313
10.1.1 智能网业务及物理体系结构313
10.1.2 7号公共信道信令系统317
10.2 IN/CORBA互操作324
10.2.1 TC/CORBA互操作的两种类型324
10.2.2 互操作的构架325
10.2.3 互操作接口327
10.3 规范翻译329
10.3.1 信息对象类的映射330
10.3.2 规范翻译生成的其他接口332
10.4 交互翻译332
10.5 智能网中对话流程示意338
10.5.1 基于CORBA智能网的SCP发起对话338
10.5.2 基于传统智能网的SSP发起对话339
10.6 SCCP ORB互通协议342
10.6.1 SIOP消息的寻址342
10.6.2 SIOP IOR描述体的构成343
附录
附录1 伪对象的C++ 映射348
附录2 IDL语言的Java映射361
附录3 最小CORBA(Minimum CORBA) 392
参考文献