国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Enterprise JavaBeans組件慨述(7)

2019-11-18 14:44:10
字體:
來源:轉載
供稿:網友

  EnterPRise javaBeans組件慨述(7)

CORBA 和 EJB 技術的關系

   公用對象請求代理程序體系結構 (CORBA) 為分布式對象的平臺中立和語言中立的計算環境奠定了基礎。在 CORBA 環境中,功能駐留于對象之中,而客戶機可通過對象請求代理程序 (ORB) 訪問這些對象。完整的 CORBA 實現提供 ORB,外加稱為 CORBA 對象服務和 CORBA 公用工具的幾個運行時服務。也可只提供 ORB,不提供相關聯的對象服務和公用工具(例如,IBM 就提供這樣的兩種獨立 ORB)。實現基本 ORB 功能的軟件稱為 ORB 核心。為了支持語言無關性,CORBA 應用程序是用接口定義語言 (IDL) 編寫的。該語言在語法上類似于 C++,但不包含語義:IDL 中指定的操作是操作接口,而不是操作實現。由于它對多種平臺和多種語言的支持,以及源自其分布式特征的可伸縮性,CORBA 非常適合于治理企業規模的信息系統。

   設計 EJB 規范也是為了支持企業信息系統。這樣說來,CORBA 是一個競爭者嗎?根據 Frequently Asked Questions for Enterprise JavaBeans,答案是否定的:

   “實際上,EJB 技術很好地補充了 CORBA。CORBA 提供了一個強大的基于標準的基礎結構,可在此結構之上構建 EJB 服務器。EJB 技術使得在 CORBA 基礎結構的頂層構建應用程序變得更為輕易?!保‥nterprise JavaBeans 常見問題解答)

   雖然 EJB 規范和 CORBA 規范說明的是不同的技術,但 EJB 實現目前利用 CORBA 技術的某些方面。一個例子就是 RMI/IIOP。EJB 規范要求 EJB 組件及其容器使用 Remote Method Invocation (RMI) 技術,實現分布式對象之間的方法調用。 RMI 規定遠程方法的語法和語義,但并不規定應使用何種傳輸協議提供網絡連接。CORBA Internet 對象請求代理程序間協議 (IIOP) 基本上定義了通過 TCP/ip 傳輸 CORBA 消息的一種方法。開發使用 IIOP 消息形式交換 RMI 數據的 EJB 實現,說明了 EJB 應用程序怎樣才能有效地使用 CORBA 技術的各部分。這種網絡也支持與 CORBA 應用程序的互操作性,后者使用 IIOP 發送本地 CORBA 消息,與 RMI 無關。IBM 的 EJB 實現,即 WebSphere application Server,優化了 IIOP 的使用,方法是,弄清楚分布式對象何時駐留在同一臺服務器上,并且只在對象確實在遠程時才調用 IIOP。

   為了方便既并入 EJB 技術,又并入 CORBA 技術的企業系統的開發,Sun Microsystems 在 EJB 規范和 CORBA 之間創建了一種映射。將 EJB 體系結構映射到 CORBA,影響到 EJB 技術的幾個方面,包括對象分布、命名和事務。CORBA 映射的主要目的是,保證不同廠商構建的 EJB 服務器之間的互操作性?;ゲ僮餍蕴峁┮韵潞锰帲?

   CORBA 客戶機可以訪問部署在基于 CORBA 的 EJB 服務器上的 EJB 組件

   客戶機程序在事務中可以將對 CORBA 對象的調用,與對企業級 bean 的調用混合在一起

   事務可以跨多個 bean,而這些 bean 又位于來自不同廠商的基于 CORBA 的多臺 EJB 服務器上

   使用來自某個廠商的 ORB 的客戶機,可以訪問另一個廠商基于 CORBA 的 EJB 服務器上的 bean

   對于要訪問 EJB 組件的 CORBA 客戶機來說,bean 接口被映射到 IDL。例如,可將股票交易 bean 中定義的 buy() 和 sell() 方法,指定為 IDL 文件中的 CORBA 操作。非 bean 的 CORBA 客戶機,如 C++ 客戶機,可以訪問這個 bean,并用標準 CORBA 調用來調用 bean 的方法。假如容器使用 IIOP 作為它的分布式對象協議,則該容器的職責是,生成與企業級 bean 及其接口對應的 IDL。

   EJB 命名服務,它以“CORBA 對象服務”命名服務為基礎,使 EJB 組件可用于 CORBA 客戶機。Java Naming and Directory Interface (JNDI) 可提供到 CORBA 命名服務的接口,同時,客戶機既可以通過 JNDI 調用間接訪問基礎命名服務,也可以通過“CORBA 對象服務” (COS) 命名 API 直接訪問該服務。

   EJB 事務支持依靠于 CORBA Transaction Service,即 Object Transaction Service (OTS)。Java Transaction Service (JTS) 代表 OTS 的 Java 綁定,它是語言中立的。基于 CORBA 的 EJB 容器必須識別 CORBA 客戶機通過 OTS 接口發出的事務邊界,以及 EJB 應用程序通過 Java Transaction API (JTA) 接口發出的事務,JTA 是到 JTS 的應用程序級接口。JTA 還代表 Open Group XA 接口的 Java 綁定,以便將應用程序資源連接到外部事務治理器。JIA 中含存的 javax.transaction.UserTransaction 接口,為事務邊界的應用程序級控制提供 API。UserTransaction 接口,既可由其事務屬性設置為 TX_BEAN_MANAGED 的 bean 使用,以可由 Java 客戶機使用。



發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 龙州县| 界首市| 驻马店市| 和林格尔县| 铜川市| 渝北区| 东城区| 峨边| 确山县| 抚州市| 澄城县| 周口市| 小金县| 福海县| 固阳县| 修武县| 宜良县| 石家庄市| 霍邱县| 四子王旗| 航空| 德格县| 汝州市| 凤台县| 依兰县| 昂仁县| 新蔡县| 哈巴河县| 贵溪市| 余庆县| 昌江| 琼结县| 蛟河市| 偃师市| 徐闻县| 商丘市| 涞源县| 班戈县| 无为县| 成武县| 阿拉善右旗|