CORBA(十)

日期: 2007-12-27 来源:TechTarget中国

  根据系统功能的定义,两种业务均属于电信业务的经营范围,因此定义模块名TeleCom。电话号码注册为电信业务管理功能范围,需定义该功能接口Registry,该接口内包含用户注册方法register();电话号码查询为用户服务功能范围,需定义接口User,该接口内包含查询个人电话号码方法getNumber()。经过上述分析后编写的IDL接口定义文件TeleCom.idl如下:

  module TeleCom

  { interface User //接口User声明

  { //接口中getNumber方法的定义

  int getNumber();

  };

  interface Registry //接口Registry声明

  { //接口中register方法定义,其中以string类型变量作为输入参数 ’方法返回User对象

  User register(in string name);

  };

  };

  上述接口定义文件经idl2java编译后,在当前接口文件目录中生成TeleCom子目录,该目录中包括UserPOA.java、RegistryPOA.java等文件。这些文件是客户端和服务对象实现功能的框架以及相关的支持文件。有兴趣的读者可以实际创建IDL文件,经IDL到Java语言的映射后,分析生成文件的格式。

  2. 实现服务功能

  (1)实现User接口的类UserImpl

  根据系统分析确定的功能,定义接口User对应的实现类UserImpl的代码如下:

  // UserImpl类继承定义在UserPOA.java中的UserPOA类

  public class UserImpl extends TeleCom

  .UserPOA

  { private int aNumber;

  //

  十、CORBA系统在CIMS中的应用

  在CIMS环境下,应用通常是分布的,应用之间需要交换信息和数据,例如CAD和CAM之间,CAD、CAM和MRP II之间,甚至是不同的CAD应用之间都会发生数据的交互。分布式应用的开发,尤其是面向对象的分布式应用的开发,对于系统开发者而言是极具挑战性的。CORBA、C OM/OLE Automation和JavaBeans是目前针对此类应用的主要分布对象计算模型和支持系统。一般来说,如果所开发的应用只面向Windows平台(Windows 3.x/95/NT),那么使用COM 是最佳的选择;如果所开发的应用完全是使用Java语言编制的,那么就应该采用JavaBeans 的方案。但是,如果所开发的应用需要集成异构的平台,那么无疑应该选择CORBA。通过C ORBA系统的支持,分布应用的开发者可以采用不同的语言、操作系统和硬件平台来开发面向对象的分布式应用。当然,首要的条件是存在支持该种平台、操作系统和语言的CORBA系统。

  利用CORBA系统进行分布对象应用的开发具有下面三个特点:①开发代价小、效率高。系统开发者只需要编写描述服务对象接口的IDL语言文件并安装描述文件,实现服务对象的功能即完成了全部的任务。其它的相关代码或者是由IDL编译器自动创建,或者是由ORB 类库提供,应用程序员并不需要编写例如网络通信、数据编码/解码、名址映射和安全管理的程序代码,从而可以把工作重点放到服务对象实现的过程中去。②通过CORBA系统的支持,一个服务对象可以透明地被分布在本地和网络上的客户所调用,扩大了服务对象的使用范围,为分布的客户所共享。③CORBA系统作为“软件总线”,可以为服务对象提供“ 即插即用”的功能,而且当对象实现改进或升级时,只要接口保持不变,客户代码无需作任何改动。

  在CIMS的应用环境之下,CORBA系统的另一个十分重要的作用是集成已有的应用系统,这样的应用系统通常称为“遗留系统”(Legacy System)。“面向CIMS的并行工程集成框架关键技术”课题就是一个很好的例子。各个领域框架的应用系统,例如,机械领域的Pro Engi neer、电子领域的Mentor Graphics等等,需要通过CORBA系统集成到一起实现信息的交互和共享。集成的关键在于对遗留系统的封装和包裹(wrap),经过包裹,遗留系统就能够以OMG IDL的形式提供给用户,从而和新开发的面向对象的分布式应用同样处理。包裹的形式视不同的遗留系统而不同,对于能够提供用户调用接口的遗留系统,只要利用原有的调用来构造新的界面(必要时需要进行一定的扩充)即可;而对于比较封闭的遗留系统,集成的难度就大得多了,通常是利用文件作为中介来集成。不过,目前CAD、CAM和MRP II 的系统厂商在发展过程中也在逐步使自身的应用系统更加开放,向用户提供更灵活的控制手段,完全封闭的系统已经十分少见了,从而使集成工作也变得相对简单。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

相关推荐

  • 基于SOA的物流信息集成框架模型设计

    文中基于SOA具有的松耦合、跨平台、可重用等优势,提出了一种基于SOA的物流信息集成框架模型,对框架内的各个技术层面特别是服务组装层面进行了深入探讨。

  • OMG主席畅谈云计算和SOA

    Richard Soley是在20世纪90年代致力于推动标准分布式对象计算架构的核心人员之一,这一架构就是后来众所周知的CORBA。

  • OMG DDS线协议交互式实例

    若干不同的消息类型构成了急速嵌入式中间件的小世界。对象管理组织(OMG)赞助的数据分布式服务(DDS)最近被用于演示这些系统之间的线协议交互操作。

  • OMG BPM/SOA实践社区BPM/SOA案例研究

    本周,SearchSOA.com和eBizQ合作伙伴OMG BPM/SOA实践社区宣布了“敏捷业务和业务流程管理BPM流程优化以及面向服务架构(SOA)案例研究竞赛”的冠军。