《電子技術應用》
您所在的位置:首頁 > 其他 > 業界動態 > 基于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框架中控制器角色的一部分,僅當邏輯簡單時適合。

4、Struts框架應用到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。?

為了實現國際化,所有的資源文件必須都存儲在基本資源文件所在的目錄中?;举Y源文件包含的是用默認地區語言-本地語言編寫的消息。比如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亚洲国产精品_日韩亚洲一区二区
欧美体内she精视频| 亚洲精品国产精品乱码不99按摩 | 欧美亚洲一区三区| 亚洲调教视频在线观看| 一本大道久久a久久精品综合| 亚洲欧洲综合另类在线| 久久激情婷婷| 亚洲成人在线免费| 亚洲视频一二区| 亚洲一区一卡| 香蕉久久一区二区不卡无毒影院| 午夜老司机精品| 性色av一区二区三区| 午夜精品一区二区在线观看| 性做久久久久久免费观看欧美 | 久久精品1区| 亚洲电影成人| 亚洲精选中文字幕| 正在播放日韩| 亚洲欧美日本视频在线观看| 欧美一级视频精品观看| 欧美中文字幕精品| 久久久久久91香蕉国产| 久久亚裔精品欧美| 欧美不卡视频一区发布| 欧美国产亚洲精品久久久8v| 欧美日韩国产精品自在自线| 国产精品v亚洲精品v日韩精品| 国产精品区一区二区三| 国产一区二区久久久| 伊人狠狠色丁香综合尤物| 在线观看欧美日韩| 亚洲青涩在线| 亚洲一区美女视频在线观看免费| 性做久久久久久久免费看| 亚洲国产欧美精品| 宅男噜噜噜66国产日韩在线观看| 亚洲免费一在线| 久久国产精品72免费观看| 蜜桃久久av| 欧美三区在线视频| 国产亚洲精品bv在线观看| 亚洲电影免费观看高清完整版在线观看 | 午夜精品久久久久久久蜜桃app | 久久久久久自在自线| 欧美r片在线| 欧美视频官网| 国产性猛交xxxx免费看久久| 亚洲国产成人精品久久久国产成人一区 | 一区二区三区国产在线| 欧美亚洲视频一区二区| 亚洲精品国产精品国自产在线 | 亚洲国产精品第一区二区三区| 亚洲美女视频在线免费观看| 亚洲综合导航| 亚洲精品乱码久久久久久| 亚洲一区二区三区在线播放| 久久久久久高潮国产精品视| 欧美精品一区二区三区久久久竹菊| 国产精品午夜国产小视频| 亚洲丰满在线| 午夜视频精品| 一区二区三区**美女毛片| 久久精品视频在线| 欧美色欧美亚洲另类二区| 国产在线欧美| 在线亚洲一区二区| 91久久久久久| 欧美在线首页| 欧美日韩精品三区| 激情久久一区| 亚洲免费人成在线视频观看| 亚洲靠逼com| 久久久久久综合网天天| 国产精品黄视频| 亚洲欧洲日韩女同| 欧美一区二区三区日韩视频| 亚洲图色在线| 欧美大片18| 合欧美一区二区三区| 国产精品99久久不卡二区| 日韩视频永久免费| 久久综合狠狠综合久久综合88| 国产精品亚洲成人| 一本一本久久a久久精品综合妖精 一本一本久久a久久精品综合麻豆 | 国产日韩av高清| aa级大片欧美三级| 亚洲精品视频免费观看| 久久婷婷综合激情| 国产九九精品视频| 宅男精品视频| 艳妇臀荡乳欲伦亚洲一区| 蜜桃av一区二区三区| 国内精品免费午夜毛片| 亚洲欧美日韩国产另类专区| 亚洲一区二区av电影| 欧美精品性视频| 亚洲激情校园春色| 亚洲精品1234| 巨乳诱惑日韩免费av| 国产亚洲福利| 性欧美大战久久久久久久久| 亚洲欧美国产不卡| 欧美日韩国语| 亚洲三级性片| 日韩视频免费观看高清在线视频| 蜜桃av一区二区三区| 一色屋精品亚洲香蕉网站| 久久精品日韩| 猛干欧美女孩| 伊人久久婷婷色综合98网| 久久精品女人| 美腿丝袜亚洲色图| 在线观看国产精品网站| 亚洲国产精品一区二区第一页| 久久综合电影一区| 一区二区亚洲| 亚洲日韩第九十九页| 欧美粗暴jizz性欧美20| **性色生活片久久毛片| 亚洲国产乱码最新视频| 蜜桃伊人久久| 亚洲欧洲日本专区| 亚洲素人在线| 国产精品日韩在线观看| 欧美亚洲视频| 另类成人小视频在线| 在线日韩视频| 99这里只有精品| 欧美视频精品一区| 亚洲在线视频观看| 久久精品国产亚洲一区二区三区| 国际精品欧美精品| 亚洲成色777777女色窝| 男人的天堂亚洲在线| 亚洲人午夜精品免费| 亚洲一区二区三区精品动漫| 国产精品久久亚洲7777| 欧美一级在线视频| 美女主播精品视频一二三四| 亚洲三级影院| 亚洲女人av| 国产日韩一区| 亚洲欧洲视频在线| 欧美日韩国产小视频在线观看| 亚洲视频狠狠| 久久精品国内一区二区三区| 在线观看亚洲精品视频| 在线一区视频| 国产亚洲欧美中文| 亚洲欧洲一区二区三区| 欧美日韩综合另类| 欧美亚洲一区| 欧美激情国产日韩| 亚洲深夜福利| 久久青草福利网站| 亚洲精品一区在线观看| 欧美一区二区精品| 在线免费观看日本欧美| 亚洲一区二区三区四区视频| 国产小视频国产精品| 亚洲乱码国产乱码精品精98午夜| 国产精品porn| 亚洲电影在线看| 国产精品电影在线观看| 亚洲电影观看| 国产精品观看| 亚洲国产欧洲综合997久久| 欧美日韩免费看| 欧美在线视频日韩| 欧美欧美午夜aⅴ在线观看| 亚洲欧美综合另类中字| 欧美高清视频一区二区三区在线观看 | 国产精品女主播在线观看| 亚洲国产综合在线看不卡| 欧美性猛交xxxx免费看久久久| 欧美在线亚洲综合一区| 欧美日韩视频免费播放| 久久精品国产99| 国产精品久久一卡二卡| 亚洲人成啪啪网站| 国产欧美精品一区二区三区介绍| 日韩视频一区二区三区在线播放免费观看 | 91久久精品国产91性色| 性欧美18~19sex高清播放| 亚洲国产精品久久久久婷婷老年| 午夜精品在线| 亚洲人午夜精品免费| 久久精品一区二区三区四区| 亚洲免费av电影| 老司机67194精品线观看| 亚洲午夜久久久| 欧美精品三级在线观看| 久久精品亚洲一区二区| 国产精品一区二区三区四区| 99一区二区| 亚洲国产三级在线| 久久久久久夜| 亚洲免费在线播放| 欧美三级中文字幕在线观看|