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