用Delphi客户端访问EJB组件

2008-02-23 07:20:47来源:互联网 阅读 ()

新老客户大回馈,云服务器低至5折

1 2 3 下一页

  摘 要:本文分析了COM客户使用COM桥访问EJB组件的原理,并结合实例给出了使用Delphi访问部署在Weblogic server上的EJB组件的实例。最后对比分析了其他几种集成方案和使用本方案的优化策略。

  关键字:COM、EJB、分布式组件
  1、 概述

  CORBA、.net、Web Service、J2EE是分别是分布式软件体系架构的成就。J2EE在模型简洁方面优于CORBA,同时消除了.NET对一家公司的依赖,相对于Web Service技术它相对成熟因而在业界有着重要的地位。J2EE的核心就是EJB(EntERPrise Java Bean)-一种分布式组件。

  EJB组件的客户端可以是Web方式的Applet,JSP/Servlet,也可以是非Web方式的GUI客户。由于PC机的盛行GUI客户往往是基于Windows的。Delphi是windows下一个优秀的开发平台,Borland公司提供了Delphi到部署在BAS(Borland公司的EJB服务器)上的EJB访问的优雅解决方案(在客户端和服务器端同时使用CORBA),但却没有提供Delphi到部署在其他服务器上的EJB组件的解决方案。SUN公司开发了J2EE CAS COM Bridge解决了COM(Common Object Component,微软提出的组件模型)客户访问EJB组件的问题。Delphi完全支持COM技术,所以Delphi可以作为EJB的客户。本文集中探讨如何利用Delphi访问EJB组件。

  J2EE CAS COM Bridge(后面简称为COM桥)是SUN公司提供的一个桥软件,通过它,能使用COM技术的任何一种开发工具开发的客户都可以顺利的访问J2EE服务器上的EJB组件。

  如图1.1所示,J2EE CAS COM Bridge在客户应用地址空间启动JVM(Java虚拟机),COM桥提供把JVM包装成COM组件的外覆COM组件,客户使用这些外覆COM组件来访问JVM。从而客户做出一个COM调用时,COM桥使用JNI(Java Native Interface)把它转发到进程内JVM,JVM把这一调用发往服务程序(当访问J2EE服务器时使用RMI/IIOP协议来发送请求),即客户的调用最终变成了一个真正的Java调用,而中间实现这一转换的过程由COM桥来完成,无需开发者关心。在访问本地java对象和访问J2EE服务器都是同一原理。

  由于JVM是在客户进程地址空间内部启动,所以我们可以单独控制它的运行参数,而不影响其它应用对JVM的访问。



1 2 3 下一页

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:用Delphi实现动态获取版本信息

下一篇:Delphi存取图像完整解决方案