

Object Web及其應用
- 期刊名字:蘇州大學(xué)學(xué)報
- 文件大?。?21kb
- 論文作者:夏曉燕,呂強
- 作者單位:蘇州大學(xué),江蘇省
- 更新時(shí)間:2020-06-12
- 下載次數:次
第20卷第3期蘇州大學(xué)學(xué)報《(自然科學(xué)版)004年7月OURNAL OF SUZHOU UNIVERSITY( NATURAL SCIENCE EDITION文章編號∶000207x2004)3-0031-04Obiect web及其應用夏曉燕!2呂強12Ⅰ.蘇州大學(xué)計算機科學(xué)與技術(shù)學(xué)院江蘇蘇州2150062.江蘇省計箅機信息處理技術(shù)重點(diǎn)實(shí)驗室江蘇蘇州215006)摘要引入了 Object Web的概念并闡述了 CORBA和 Object Web互補的關(guān)系以及支持 Object Web的Web服務(wù)器實(shí)例 Jigsaw.最后給出了將 Object Web, CORBA和 Jigsaw結合在一起的應用實(shí)例關(guān)鍵詞 Object Web汾布式對象 CORBA Jigsaw中圖分類(lèi)號:TP393.02文獻標識碼∶A1 Obiect Web的引入World wide wel(簡(jiǎn)稱(chēng)web舶創(chuàng )立和發(fā)展使我們有可能建立一個(gè)開(kāi)放的、跨平臺的網(wǎng)絡(luò )C/S應用標準即跨操作系統的、跨硬件平臺的、跨語(yǔ)言環(huán)境的、能夠在網(wǎng)際運行的C/S應用標準目前正開(kāi)始Web與分布式對象結合我們稱(chēng)為對象wel( Object Web)在這個(gè)階段中,Web只是提供給我們一個(gè)網(wǎng)絡(luò )平臺和基礎的網(wǎng)絡(luò )運行對象真正的應用不是簡(jiǎn)單瀏覽必須實(shí)現組件化和分布化這樣借助于 Internet作為物理網(wǎng)絡(luò )平臺,web作為應用發(fā)布平臺用戶(hù)得到的應用程序將透明地運行在全球的網(wǎng)絡(luò )上不僅僅數據將透明地分布在網(wǎng)絡(luò )上應用也將會(huì )透明地接受網(wǎng)絡(luò )上服務(wù)器的支持2 CORBA和 Obiect Web2.1 CORBA簡(jiǎn)介CORBAC Common Object Request Broker Architecture是一個(gè)由 OMC( Object Management Group)發(fā)布的分布式面向對象應用系統的開(kāi)發(fā)規范121得到除微軟之外的800多家主流公司的支持CORBA最令人注目的工作是將對象的界面與實(shí)現分離然后定義了對象之間交流的規范.這種規范用界面定義語(yǔ)言ID( Interface Definision language表達使得客戶(hù)方和服務(wù)方有了統一的獨立于實(shí)現的界面標準2.2 CORBA/Java和 Object Web的戰略組合CORBA雖然強調對象實(shí)現語(yǔ)言的獨立性但最流行的dTH中國煤化愛(ài)Java作為對象實(shí)現CNMHG收稿日期2004-01-17基金項目江蘇省自然科學(xué)基金資助項目(BK2003030)江蘇省計算機信息處理技術(shù)重點(diǎn)實(shí)驗室開(kāi)放課題資助項目(KJSO3062)作者裔曉燕(1965-)女工程師主要從事計算機實(shí)驗設計和管理工作蘇州大學(xué)學(xué)撇(自然科學(xué)版)第20卷的載體所以 CORBA往往是與Java聯(lián)系在一起的簡(jiǎn)稱(chēng) CORBA/Java.但也有支持C++的 CORBA開(kāi)發(fā)環(huán)境如 Inprise公司的 Visibroker兼有 For Java和ForC++兩個(gè)開(kāi)發(fā)環(huán)境CORBA和Java相互彌補了對方的不足 CORBA注重于部件的網(wǎng)絡(luò )透明性而Java則側重于部件的實(shí)現透明性. CORBA支持豐富的對象世界與Java應用平臺的連接CORBA/Java和 Object Web是密不可分的. Object Web要求有關(guān)聯(lián)地應用模塊組件化而Java幾乎是組件化程序設計平臺的典范3].ObiectWel要求組件對象之間的通訊要擺脫HTTP的束縛CORBA正是提供了這樣一種框架借助于 CORBA/Java, Object Wel對傳統的兩層C/S體系進(jìn)行了改進(jìn)在傳統的C/S應用程序中C和S之間的聯(lián)系是點(diǎn)對點(diǎn)的向指定的S發(fā)出請求S予以響應并返回.一般來(lái)說(shuō)這里的指定的”往往與運行的物理介質(zhì)、特定的應用協(xié)議相關(guān). Object Web采用了目前最為流行的三層C/S體系結構2.2.1客戶(hù)端這是傳統的瀏覽器及其運行桌面但與傳統的Web頁(yè)面不同這里客戶(hù)端所得到的是直接可以表現現實(shí)世界的生動(dòng)直觀(guān)的界面而不是以前的靜態(tài)HTML頁(yè)面或基于表格的頁(yè)面這些由應用程序而不是腳本語(yǔ)言廣產(chǎn)生的界面由 Javabean為代表的組件實(shí)現,它們嵌入在傳統的HTML頁(yè)面中借助于Web服務(wù)器和瀏覽器被傳播到希望得到服務(wù)的客戶(hù)端.于是被載到客戶(hù)端的組件可以與其它的遠程對象組件通訊.同時(shí)遠程對象組件也可以通過(guò) CORBA事件和回調 callback)式調用客戶(hù)端的部件2.2.2應用服務(wù)器層該層的服務(wù)器為HTTP客戶(hù)和CORBA客戶(hù)提供服務(wù)顯然這兩種服務(wù)可以在任何主流平臺上提供于是在這一層上為HTTP和CORBA客戶(hù)實(shí)現了所有應用邏輯.相對于客戶(hù)端的對象來(lái)說(shuō)駐留在本層上的對象組件就是服務(wù)組件了這個(gè)層次的服務(wù)器事實(shí)上還起到了一個(gè)對象集散地的作用所有提供業(yè)務(wù)服務(wù)的對象都集中在這里由對象事務(wù)監控器 OTM( Object Transaction Monitor來(lái)管理和協(xié)調2.2.3支援服務(wù)器層第二層次的 CORBA對象需要訪(fǎng)問(wèn)的服務(wù)器構成了C/S的第三個(gè)層次通常這是一些通用服務(wù)器如TP監控器、數據庫服務(wù)器、文件服務(wù)器等事實(shí)上這就是傳統兩層C/S體系中的S層次. Obiect Web的作用是將應用邏輯徹底地從這個(gè)層次中剝離出來(lái)組合到應用服務(wù)器層這個(gè)中間層次中綜上我們可以看到 corba為 Object Web提供了分布式對象的運行總線(xiàn),它把已實(shí)現的對象封裝成ORB對象從而透明地在Web上以對象的模型運行3 Jigsaw和 Object Webgaw是W3 World Wide Web Consortiums組織為了演示其定義的新性能而開(kāi)發(fā)的web服務(wù)器全部代碼用Java寫(xiě)成是一個(gè)可移植性高、可擴展性強、采用面向對象設計的Wcb服務(wù)器可以運行在任何支持Java虛擬機的平臺上Jgaw由服務(wù)器模塊和資源模塊這兩種不同模塊及相引L凵中國煤化工支3.1服務(wù)器模塊CNMHG服務(wù)器模塊按照HTTP協(xié)議處理socket連接創(chuàng )建新的客戶(hù)對象譯碼客戶(hù)請求發(fā)送服務(wù)器的笞復這是沿用了傳統的UNIX后臺進(jìn)程的處理模式服務(wù)器模塊具體地由htd服務(wù)器對象實(shí)現httpd服務(wù)器對象有兩個(gè)作用第一個(gè)作用是啟動(dòng)一個(gè)被稱(chēng)為客戶(hù)的琙溎循環(huán)等待可能到的新連接第二個(gè)作用是管理其它的對象如日志對象、授權對象、客戶(hù)緩第3期夏曉燕呂強 Object Web及其應用沖池、根(root)源、資源管理器等這些對象將體現服務(wù)器的部分特性3.2資源模塊資源 resource)模塊是信息資源的封裝表示負責產(chǎn)生響應于請求對象的答復對象這是 Jigsaw中最有特色的地方許多靈活的可擴展性和實(shí)現 Object Web的特色就是由此產(chǎn)生的通過(guò)資源和協(xié)議框的結合Jigsaw實(shí)現了資源模塊3.3定位資源首先root資源是一個(gè)目錄資源也就是一個(gè)資源池 Container resource)它包含了其它的資源如目錄資源和文件資源所有資源類(lèi)都必須定義定位方泫 lookup method)其作用就是為了查找或返回欲定位的資源Jigsaw允許一種稱(chēng)為過(guò)濾器的特殊資源加載到任何資源上.過(guò)濾器有兩個(gè)基本的方法 ingoing filter和going Filter子匹配資源在定位成功后都要調用關(guān)聯(lián)過(guò)濾器的 ingoing Filter方法將導致這次定位工作的請求傳遞給該方法.當完全匹配資源執行成功 perform方法(被存取后 igsaw將調用關(guān)聯(lián)過(guò)濾器的outging Filter方法并將導致本次定位的請求和產(chǎn)生的答復都傳遞給 outgoing Filter方法.在默認情況下這兩個(gè)方法都不產(chǎn)生任何返回對象但一旦它們產(chǎn)生了一個(gè)答復對象客戶(hù)對象將中斷剩下的正常邏輯把該答復作為響應請求的答復發(fā)回給對應的連接這樣用戶(hù)就可以定置 ingoing Filter和 out going Filter方法內的應用邏輯從而實(shí)現自己的功能注意到 Jigsaw通過(guò)專(zhuān)用的程序動(dòng)態(tài)配置 Jigsaw服務(wù)器并且又是用Jaa實(shí)現的Java又能夠很方便地實(shí)現類(lèi)在運行時(shí)連接的特性這樣就使 Jigsaw作為Web服務(wù)器具有巨大的動(dòng)態(tài)可擴充性.同時(shí) Jigsaw是目前支持 Object Web的最佳Web服務(wù)器應用實(shí)例以 CORBA/Java和 Jigsaw作為 Object Web應用的支撐技術(shù)我們可以透明地為所有web站點(diǎn)提供增強服務(wù)這種框架技術(shù)一般的運行步驟如下(1)客戶(hù)機發(fā)出瀏覽頁(yè)面請求2) Jigsaw代理服務(wù)器將該請求轉發(fā)給目的web服務(wù)器這時(shí)通過(guò)過(guò)濾器的 ingoing filter方法可以在轉發(fā)請求前對該請求作任意的處理;(3)目的Web服務(wù)器接受來(lái)自 Jigsaw的頁(yè)面請求(4)目的Web服務(wù)器產(chǎn)生相應的頁(yè)面(5) Jigsaw代理服務(wù)器收到對應的頁(yè)面(6)在 Jigsaw的過(guò)濾器的 outgoing Filter方法中嵌入一個(gè)ORB對象由該ORB對象將頁(yè)面發(fā)給注冊過(guò)的ORB服務(wù)對象(7)對象服務(wù)器處理過(guò)該頁(yè)面后將可能修改過(guò)的頁(yè)面或新的頁(yè)面返回給 Jigsaw的ORB對象(8) Jigsaw代理服務(wù)器將經(jīng)過(guò)ORB對象服務(wù)器處理過(guò)的頁(yè)面返回給1)的客戶(hù)機或將ORB對象直接嵌入到Jaa的 applet中在代理服該主頁(yè)把apt下載到本地于是該apt航就可以直授同H中國煤化工主頁(yè)客戶(hù)機通過(guò)瀏覽CNMHG過(guò)了HTTP協(xié)議而直接處理包括界面在內的一切活動(dòng)我們應用 Object Web思路通過(guò)將 CORBA/Java和 Jigsaw的結合有彈性地實(shí)現了中文翻譯代理.Jigsaw可以很容易被配置成HTTP的代理服務(wù)器我們可以很方便地為該代理對象加載過(guò)濾器在該過(guò)濾器的outgoing h勞據中嵌入-個(gè) CORBA對象截獲答復頁(yè)面并將該頁(yè)面的文字信息過(guò)濾出來(lái)發(fā)給另一個(gè)34蘇州大學(xué)學(xué)撇(自然科學(xué)版)第20卷CORBA翻譯對象.后者的作用是封裝特定的翻譯系統接受 CORBA對象的翻譯請求轉發(fā)給翻譯系統最后將翻譯系統的結果返回給請求者.這種解決方案旳伉點(diǎn)是翝譯系統可以和代理系統隔離,個(gè)翻譯系統用一個(gè) CORBA對象來(lái)封裝代理服務(wù)器一端只用一個(gè) CORBA對象與提供翻譯服務(wù)的各個(gè) CORBA對象交道翻譯服務(wù)就可以在Web上透明地實(shí)現4類(lèi)似地我們還實(shí)現了瀏覽器索引引擎.改變 Jigsaw代理服務(wù)器的處理流程對于毎個(gè)成功返回的頁(yè)面記錄其相應的HTTP請求并從返回頁(yè)面中提取標題等摘要信息向下載到瀏覽器的CORBA對象發(fā)送這些信息用界面表現給用戶(hù),當用戶(hù)通過(guò)這個(gè)界面隨機請求以前的頁(yè)面時(shí),在代理服務(wù)器的 CORBA對象拿到這項特殊請求找岀記錄在案的當初的HTP請求,替用戶(hù)發(fā)岀該請求于是用戶(hù)瀏覽器上就可以得到當初的頁(yè)面.該索引引擎與瀏覽器上的歷史功能"最大的區別在于(1)能夠索引動(dòng)態(tài)頁(yè)面由于引擎并非簡(jiǎn)單地記錄產(chǎn)生頁(yè)面的URL而是把整個(gè)請求全部記錄下來(lái)所以它能夠索引許多瀏覽器所不能索引的頁(yè)面(2)索引標簽是提取自頁(yè)面內容而不是URL3)用一個(gè)獨立的 CORBA對象處理索引標簽界面根據索引可以構造出導引 Guided tour)等超媒體的熱點(diǎn)應用5Object Web集成了目前在 Internet網(wǎng)上的熱點(diǎn)技術(shù)它為構造分布式應用提供了框架支持,為組件化程序設計提供了應用模型為Web的縱深應用提供了方向參考文獻[1] ORFALI R, HANKEY D Client/Server Prograng with Java and CORBA( 2nd Edition I M ] New York: Wiley Computer[2 J EDWARDS J. 3-Tire Client/Server At Work M ]. New York: Wiley Computer Publishing 1998[3] GOSLING J. Java Programming Language 2nd Edition I M ]. New York Addison Wesley Publishing, 1998[4] BERBIE M, KACMAR C Designing hypertext support for computational application J ] Communications of the ACM, 1995[5]王志恒.基于 CORBA的網(wǎng)頁(yè)翻譯系統的設計和實(shí)現D]蘇州蘇州大學(xué),1999Obiect Web and its applicatXIA Xiao-yan'2, LU Qiang(I School of Computer Science& Engineering Suzhou Univ. Suzhou 215006, ChinaProvincial Key Lab of Information Processing Technology Suzhou Univ. Suzhou 215006 ChinaAbstract :The concept of Object Web is introduced. The complement of CORBa and Object Web is describedJigsaw an instance of Web server w hich well supports Objecta framework of com-中國煤化工bining CORBA and Jigsa w under Object Web infrastructureCNMHGKey words Object Web adistributed Object CORBA Jigsaw責任編輯凋建蘭)
-
C4烯烴制丙烯催化劑 2020-06-12
-
煤基聚乙醇酸技術(shù)進(jìn)展 2020-06-12
-
生物質(zhì)能的應用工程 2020-06-12
-
我國甲醇工業(yè)現狀 2020-06-12
-
JB/T 11699-2013 高處作業(yè)吊籃安裝、拆卸、使用技術(shù)規程 2020-06-12
-
石油化工設備腐蝕與防護參考書(shū)十本免費下載,絕版珍藏 2020-06-12
-
四噴嘴水煤漿氣化爐工業(yè)應用情況簡(jiǎn)介 2020-06-12
-
Lurgi和ICI低壓甲醇合成工藝比較 2020-06-12
-
甲醇制芳烴研究進(jìn)展 2020-06-12
-
精甲醇及MTO級甲醇精餾工藝技術(shù)進(jìn)展 2020-06-12