《電子技術應用》
您所在的位置:首頁 > 其他 > 業界動態 > 基于JAVA實現基于本體的Web服務發現

基于JAVA實現基于本體的Web服務發現

2009-02-02
作者:張 釙 朱 倩 李涓子 王克宏

1、引言?

隨著INTERNET應用的普及和軟件技術的進步,基于Web的網絡計算模式或INTERNET計算模式得到了廣泛的重視和應用。目前,面向Web應用的三層結構(或多層結構)、構件化的商務邏輯封裝、基于XML和Web Services的自動電子商務等理論和技術深入人心。而現有的這些Web技術并不能真正解決人們期待已久的智能搜索引擎、智能信息代理、智能交易代理等基于Web的個性化、智能化的服務。這正是語義Web(Semantic Web)要解決的問題。語義Web是對當前Web的一種擴展,它允許用戶更簡便地查找、共享以及組合信息。用本體來改進目前Web Services,使之成為語義Web服務(Semantic Web Services),正是目前國際上語義Web研究中的共識。基于此,W3C,DARPA等研究機制定了基于本體的,應用于Web的技術標準,如RDF、DAML和OWL等。?

同時,基于語義的自動Web Services發現機制是自動Web Services協作機制中的重要一環,。提出這個問題的關鍵因素來源于Web Services本身的發展。因為隨著Web Services的不斷走向實際應用,所提供的Web Services也越來越豐富,簡單的基于UDDI的Web Services發現機制已經不能滿足這種不斷發展的需要。?

本文介紹的正是這樣一種Web Services發現系統,此系統采用Struts基礎構架實現,并充分利用了已經取得成果WODOS(Web Oriented Distributed Ontology System),展現了JAVA技術的可擴展性可重用性。?

2、Struts介紹?

Struts是Apache公司Jarkata工程提供的開發Web應用程序的框架(Framework)。它具有組件的模塊化,靈活性和重用性優點,同時簡化了基于MVC的Web應用程序開發。Struts框架基于Java技術,Web應用程序開發人員通過Struts可以充分利用面對對象設計、代碼重用以及“編寫一次、到處運行”的優點。除此之外,Struts主要對應用程序頁面顯示、表示和數據的后臺處理代碼進行了抽象和分離,使得模塊易于劃分和管理,代碼易于維護。?

3、用MVC分析Struts?

接下來從MVC(Model-View-Control)角度觀察Struts框架中的組件:

1 Struts概覽

?????? MVC模式劃分:

*???????? 視圖

Struts采用JSP作為視圖。JSP頁面使用定制標簽,全部表單元素都使用定制標簽? 編碼,這樣頁面能夠很方便同控制器交互。每個表單都通過映射JSPServlet的請求這個方式指向一個控制器的特定入口。同時,Struts包含擴展自定義標簽庫,可以簡化創建完全國際化用戶界面的過程。

*???????? 控制器

Struts中,基本的控制器組件是Struts中的Action,用Struts提供基類,負責視圖和模型的交互。控制器的入口都由struts-config.xml的配置文件設置(由ActionMapping類進行描述)。該配置文件將來自JSP的請求映射到一個Sevlet類進行相應的處理,并制定下一個視圖的位置。

*???????? 模型

Struts框架中,模型分為兩個部分:系統的內部狀態和可以改變狀態的操作(事務邏輯)。內部狀態通常由一組ActinFormJavaBean表示。其中JavaBean有兩種作用:一是存儲來自客戶端的請求(代表是繼承ActionForm的子類);二是保存查詢結果集,用于頁面顯示(代表是用戶自定義的JavaBean)。根據設計或應用程序復雜度不同,這些Bean可以是自包含的并具有持續的狀態,或只在需要時才獲得數據(從某個數據庫)。大型應用程序通常在方法內部封裝事務邏輯(操作),這些方法可以被擁有狀態信息的bean調用;小型程序中,操作可能會被內嵌在Action類,它是Struts框架中控制器角色的一部分,僅當邏輯簡單時適合。

4Struts框架應用到WSIDS

4.1 WSIDS登錄主界面

圖2 WSIDS登錄主界面

從上圖可以看到,進入WSIDS時,用戶可以選擇登錄或是進行注冊。如果是WSIDS用戶登錄,需要輸入用戶名和密碼,驗證合法才能進入功能操作主界面。這個界面對應了Struts框架里的一個ActionForm——loginForm,它由用戶名(username)和密碼(password)組成(這里本論文使用Struts中的html標簽),并帶有隱含值actionLogin,用于判斷用戶選擇的是“登錄”還是“注冊”;同時,loginForm對應的動作(action)是login.do,(Struts中的轉向頁面均用.do表示)并且用戶提交登錄信息時,會進行有效性驗證。?

4.2 Struts配置?

將Struts組件結合到一起靠配置文件struts-config.xml,它默認位置是WEB-INFstruts-config.xml,其中定義了全局轉發、ActionMapping類、ActionForm bean和JDBC數據源。下面結合WSIDS登錄,具體論述上述問題:?

n???????? 配置全局轉發?

全局轉發用來在JSP頁之間創建邏輯名稱映射。轉發都可以通過對調用操作映射的實例來獲得。比如,我們設置了名為“notLogin”的全局轉發名字,作用是一旦系統發現用戶沒有合法登錄就試圖進行操作時,激發的Action就會ActionMapping.findForward(“notLogin”);把用戶操作的頁面轉向NotLogin.htm,避免其進行非法操作。?

n???????? 配置ActionMapping

ActionMapping對象幫助進行框架內部的流程控制,它們可將請求URI映射到Action類,并且將Action類與ActionForm bean相關聯。ActionServlet在內部使用這些映射,并將控制轉移到特定Action類的實例。所有Action類使用execute方法(Struts1.1)實現特定應用程序代碼,返回一個ActionForward對象,其中包括響應轉發的目標資源名稱。由于WSIDS用戶分三種角色,不用角色登錄進入不同的功能操作主界面,因此當用戶的用戶名和密碼驗證成功,就會從數據庫中查詢出其角色,根據角色轉向下一頁面。?

n???????? 配置ActionForm Bean

ActionServlet使用ActionForm來保存請求的參數,這些bean的屬性名稱與HTTP請求參數中的名稱相對應,控制器將請求參數傳遞到ActionForm bean的實例,然后將這個實例傳送到Action類。比如Login.jsp中頁面變量username和password在LoginAction中:

可直接獲得變量值,便于在Action中進行操作。?

n???????? 配置JDBC數據源

元素可以定義多個數據源。比如WSIDS使用了MySQL數據庫的org.gjt.mm.mysql.Driver驅動程序,連接到名為kpsdb數據庫上。?

n???????? 配置消息資源

Struts框架對國際化的支持是使用標記,以及使用java.util數據包中定義的Locale和ResourceBundle類來實現Java2平臺對這些任務的支持。定義資源文件,其后綴名為properties,需要存儲在類的路徑下,而且它的路徑要作為初始化參數傳送給ActionServlet。?

為了實現國際化,所有的資源文件必須都存儲在基本資源文件所在的目錄中。基本資源文件包含的是用默認地區語言-本地語言編寫的消息。比如WSIDS的消息資源配置文件為ApplicationResources.properties,其對應的其他特定語言編寫的資源文件名稱就應該是ApplicationResources_xx.properties(xx為ISO編碼,如英語是en)。?

WSIDS的資源配置文件ApplicationResources.properties中,其中和登錄面相關的資源是:?

具體在Login.jsp中,作如下調用:

這樣做無疑使頁面所顯示的資源進行維護變得簡單。?

4.3其它頁面

圖3 管理員操作主頁面和提交加入語義注解的WSDL文件頁面

圖4 瀏覽WSIDS服務庫頁面和基本本體瀏覽頁面

圖5 WSIDS用戶注冊頁面和增加規則頁面

圖6 WSIDS服務查詢請求界面和服務查詢結果界面

5、WODOS介紹?

WODOS(Web Oriented Distributed Ontology System),即面向web的分布式本體系統。它本身是完全采用JAVA編寫的一個語義Web支撐平臺,具有以下功能:支持中英文,可以將本體信息存于關系型數據庫中,支持RDF/OWL文件的導入導出,支持RQL查詢,第三方軟件可以通過OdoAPI進行操作。還引入推理機制,可以對存于WODOS中的本體事實施以規則(基于F-Logic),并在這些規則的基礎上進行推理。WODOS建立了統一的用戶界面,可以把對它的各種操作(如原有的RQL查詢、RDF文件導入導出和新加入的F-Logic操作等)集成在一起。?

WSIDS系統就是基于WODOS系統提供的語義Web基本功能,在Web Services發現的應用方向上進行了一個有機的結合,這也充分體現出JAVA本身的可擴展性和可重用性。?

6、結束語?

本文通過對WSIDS系統的介紹,展示了Struts基礎構架的應用,并且基于已有的成果WODOS展示了JAVA技術的可擴展性和可重用性。并且由于JAVA的跨平臺性,本系統可以運行于Linux、Windows的各種操作系統,采用Struts使得其操作簡單,易于測試和維護。?

參考文獻?

1.? 徐劍軍等,“基于本體的智能Web服務”,計算機科學,2002,第29卷第12期:92-94

2.? James Hendler. “Agents and the Semantic Web” IEEE Intelligent Systems March/April 2001:30-37

3.? Jeff Heflin and James Hendler. “A Portrait of the Semantic Web in Action” ?IEEE Intelligent Systems March/April 2001:54-59

4.? Sheila A. McIlraith, Tran Cao Son and Honglei Zeng. “Semantic Web Service” IEEE Intelligent Systems March/April 2001:46-53

5.? Tim Berners-Lee, James Hendler and Ora Lassila. “The Semantic Web”,SCIENTIFIC AMERICAN,May,2001:34-43?

6.? Omair Javed. “Semantic Web-Mobile Internet Technical Architecture”. Institute of Software Systems, Tampere University of Technology, 2003.5

7.? T. Sollazzo, S. Handshuch, S. Staab, and M. Frank: Semantic Web Service Architecture– Evolving Web Service Standards toward the Semantic Web. Proceedings of the Fifteenth International FLAIRS Conference, Pensacola, Florida, May 2002.

8.? Oussama Kassem Zein and Yvon Kermarrec. “An Approach For Describing/Discovering Services and For Adapting Them to the Needs of Users in Distributed Systems”. American Association for Artificial Intelligence,2004.

本站內容除特別聲明的原創文章之外,轉載內容只為傳遞更多信息,并不代表本網站贊同其觀點。轉載的所有的文章、圖片、音/視頻文件等資料的版權歸版權所有權人所有。本站采用的非本站原創文章及圖片等內容無法一一聯系確認版權者。如涉及作品內容、版權和其它問題,請及時通過電子郵件或電話通知我們,以便迅速采取適當措施,避免給雙方造成不必要的經濟損失。聯系電話:010-82306118;郵箱:aet@chinaaet.com。
亚洲一区二区欧美_亚洲丝袜一区_99re亚洲国产精品_日韩亚洲一区二区
久久久国产精品一区二区中文| 免费久久99精品国产| 国内精品福利| 国产精品久久久久av免费| 欧美国产日本韩| 久久综合亚洲社区| 久久se精品一区精品二区| 午夜激情综合网| 亚洲综合欧美| 亚洲一区二区三区四区在线观看 | 久久精品亚洲| 校园春色综合网| 亚洲午夜激情网站| 日韩天堂在线观看| 99精品福利视频| 99re6热在线精品视频播放速度| 亚洲福利视频免费观看| 亚洲国产成人一区| 亚洲精品乱码久久久久久按摩观| 亚洲高清激情| 亚洲国产精品电影在线观看| 亚洲福利精品| 亚洲精品日韩在线| 亚洲乱码国产乱码精品精98午夜| 亚洲精品免费一区二区三区| 亚洲精品欧美一区二区三区| 亚洲精品中文字幕在线| 一区二区动漫| 亚洲一区二区精品视频| 亚洲欧美视频在线| 欧美影院久久久| 欧美专区在线观看一区| 久久精品中文| 免费观看成人鲁鲁鲁鲁鲁视频| 欧美国产视频日韩| 欧美日韩一区高清| 国产精品你懂的| 国产亚洲欧洲997久久综合| 国内精品一区二区| 1024亚洲| 亚洲理论电影网| 亚洲午夜激情免费视频| 欧美亚洲综合网| 亚洲激情视频在线播放| 9i看片成人免费高清| 亚洲一区精品视频| 欧美在线高清视频| 久久综合狠狠综合久久激情| 欧美精品日韩一区| 国产精品成人免费| 国产主播一区二区三区四区| 亚洲第一区在线观看| 亚洲精品老司机| 亚洲综合大片69999| 久久狠狠婷婷| 亚洲视频一区二区| 久久成人免费视频| 欧美精品成人| 国产欧美精品日韩| 在线看片第一页欧美| 亚洲精品日韩在线观看| 香蕉久久精品日日躁夜夜躁| 91久久精品久久国产性色也91| 在线中文字幕一区| 久久精品国产99国产精品| 欧美激情区在线播放| 国产精品一区二区三区观看| 在线观看视频免费一区二区三区| 亚洲毛片在线观看.| 午夜精品区一区二区三| 亚洲三级影片| 欧美在线视频播放| 欧美精品一区二区三区视频| 国产欧美精品日韩| 亚洲精品乱码久久久久久按摩观| 亚洲综合视频1区| 亚洲久久一区二区| 久久久久久久久久久一区| 欧美日韩精品免费| 黄色成人片子| 亚洲影院在线观看| 日韩视频欧美视频| 午夜精品视频在线| 欧美顶级大胆免费视频| 国产亚洲精品综合一区91| 一本色道精品久久一区二区三区| 亚洲福利视频一区二区| 午夜天堂精品久久久久| 欧美精品福利视频| 狠狠色丁香久久婷婷综合_中| 一本色道久久| 亚洲美女性视频| 老鸭窝亚洲一区二区三区| 国产精品蜜臀在线观看| 亚洲人成网站影音先锋播放| 欧美在线观看一区| 亚洲欧美精品一区| 欧美日韩一区二区三区四区在线观看 | 国产亚洲电影| 国产综合一区二区| 亚洲午夜激情| 亚洲少妇自拍| 欧美精品九九| 亚洲第一网站| 亚洲国产成人在线播放| 久久精品亚洲一区| 国产精品久久一级| 亚洲人成在线影院| 亚洲日本va在线观看| 久久先锋影音av| 国产区日韩欧美| 亚洲欧美成人一区二区三区| 亚洲视频欧美视频| 欧美日韩一卡二卡| 亚洲另类黄色| 日韩午夜精品| 欧美高清在线精品一区| 亚洲福利视频一区| 亚洲国产女人aaa毛片在线| 久久精品国产亚洲一区二区三区 | 一区二区三区福利| 亚洲桃色在线一区| 欧美视频在线播放| 日韩亚洲在线观看| 日韩一级片网址| 欧美精品福利| 亚洲美女中文字幕| 亚洲视频精品| 国产精品二区影院| 亚洲视频在线观看免费| 亚洲一区三区视频在线观看| 欧美日韩综合视频网址| 99亚洲视频| 制服丝袜激情欧洲亚洲| 欧美视频一区在线| 亚洲深夜福利网站| 99热这里只有成人精品国产| 欧美精品自拍| 99re热精品| 亚洲一区免费在线观看| 国产精品欧美久久久久无广告| 亚洲欧美激情一区二区| 欧美中文字幕精品| 韩国女主播一区| 亚洲欧洲日韩在线| 欧美日韩国产影院| 在线视频日韩精品| 亚洲欧美日韩一区二区三区在线| 国产精品视频大全| 欧美一区二区精品| 美日韩精品免费| 亚洲精品综合| 亚洲欧美区自拍先锋| 国产一区二区高清不卡| 亚洲国产精品va| 欧美日韩国产成人| 亚洲图片你懂的| 久久精品国产综合精品| 好吊视频一区二区三区四区| 亚洲精品国产精品乱码不99| 欧美色中文字幕| 亚洲欧美国产毛片在线| 久久亚洲欧洲| 亚洲精品日韩综合观看成人91| 亚洲欧美国产精品专区久久| 国产一区二区看久久| 亚洲日本乱码在线观看| 国产精品二区在线| 久久精品女人| 欧美日韩亚洲一区二区三区四区| 亚洲欧美电影院| 米奇777超碰欧美日韩亚洲| 日韩西西人体444www| 欧美一站二站| 精品999成人| 在线一区二区三区做爰视频网站 | 亚洲日本成人| 欧美一区二区三区免费观看| 尤物精品在线| 午夜精品成人在线| 在线欧美日韩| 亚洲影院高清在线| 影音先锋日韩资源| 亚洲永久免费视频| 激情文学一区| 亚洲欧美在线观看| 亚洲人人精品| 久久综合九色欧美综合狠狠| 亚洲一区二区三区四区五区黄| 蜜桃视频一区| 欧美亚洲一区二区三区| 欧美午夜性色大片在线观看| 亚洲国产精品一区制服丝袜| 国产精品稀缺呦系列在线| 日韩亚洲视频在线| 激情成人中文字幕| 欧美一进一出视频| 妖精视频成人观看www| 欧美肥婆在线| 久久精品亚洲一区|