top
Loading...
用Delphi客戶端訪問EJB組件
天極IT資訊短信服務 電腦小技巧
資費:包月5元
手機:
介紹:細處著手,巧處用功。高手和菜鳥之間的差別就是:高手什么都知道,菜鳥知道一些。電腦小技巧收集最新奇招高招,讓你輕松踏上高手之路。(首月免費)


摘 要:本文分析了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的訪問。



作者:http://www.zhujiangroad.com
來源:http://www.zhujiangroad.com
北斗有巢氏 有巢氏北斗