CORBA and RMI-IIOP 与corba联合使得EJB的客户可以方便的移植corba应用程序。使EJB与已存在的非java语言的(例如C++、COBOL)现有系统整合起来。实事上,Corba和EJB有非常密切的联系。J2EE中许多的概念来源于corba. Corba是EJB的基础 许多的EJB的概念都来自于corba。EJB和J2EE带来的是java为中心的,基于组件的,适合快速应用开发的中间件程序结构。使用corba,要求写复杂的中间件API的程序,这无疑要求增加对于corba程序的了解程度。这就是为什么EJB和J2EE比corba更时候快速开发的原因。因为EJB正式被行业支持。(有25家之多正在同时开发EJB产品)。 尽管如此,corba还是非常重要的技术。对高级中间件开发非常有用。事实上,市场上大多数的EJB产品都基于corba,同时也在大量的使用corba的概念。 我们为什么要关心corba You can use CORBA for legacy integration. CORBA allows for advanced middleware development. CORBA and EJB have hooks connecting them. 使用corba的益处 corba不受某个公司控制 corba是独立于语言的 Corba提供增加服务的可选性 Corba的缺点 Corba的发展受到限制:因为是一个组织,因此对于某些新特征,OMG采用的比较慢。 Corba不宜于学习 基于corba的产品可以有不协调的特征。 Corba如何工作
The ORB facilitates your networking needs. 对象实现和对象参考 对象适配器 仓库:接口仓库和实现仓库 OMG的接口定义语言 语言映射(idl-java/idl-c++) 静态调用
Calling a method in CORBA. 动态调用 corba的各种服务 名字服务/事件服务/对象事务服务/并发控制服务/安全服务 corba组件 参考规范FTP://ftp.omg.org/pub/docs/orbos/98-12-02.pdf