專利名稱::Web服務屬性圖形化展示方法
技術領域:
:本發明涉及Web服務發現領域,尤其涉及對Web服務社區中注冊的Web服務屬性進行圖形化展示的方法。
背景技術:
:任何在網絡中使用標準XML消息進行通信,并且與平臺無關、語言無關的服務都可以看作是Web服務。Web服務是使應用程序可以用與平臺無關和與編程語言無關的方式進行相互通信的一項技術,它描述了一組操:作,可以在網絡上通過標準化的XML消息傳遞來訪問這組操作,使用基于XML語言的協議來描述要執行的操作或者要與另一個Web服務交換的數據。將Web服務分組成由類似服務組成的多個類的過程稱為Web服務聚類。Web服務聚類的作用使得在同一類別中的Web服務具有較高的相似度,而不同類別之間的服務具有較大差別。因此,該過程可以提高Web服務查找的搜索空間,提高服務的查詢匹配精度和查詢的成功率。Web服務分類是服務管理中的一個重要組成部分,合理的分類規則對Web服務的查找響應速度,服務查找精度、服務的查找過程和查找結果都起著十分重要的作用。例如用企業分類的服務,用戶在查找服務的時候,只要按照企業分類目錄查找相關企業,就可以查找到該企業發布的服務。目前市場上的服務注冊中心產品的服務屬性展示方式基本上都以表格的形式呈現。如Sun公司(太陽計算機系統(中國)有限公司)的Serviceregistry產品、BEA的AqualogicEnterpriseRepository,傳統的UDDI(通用描述發現與集成)服務注冊中心對于服務屬性的展示都是通過表格的形式,用戶在對服務進行比較選擇的時候往往只能通過表格中的大堆數字加以判別,在需要進行多個屬性選擇比較的情況下,會產生較差的用戶體驗。但是,采用表格的展示方式具有傳輸數據量少、網絡負擔小的優點。而圖形化的展示方式具有良好的直觀效果,如果能夠將Web服務的屬性通過改變圖形屬性的方式進行展示,可以給用戶一個十分方便和直觀的選擇過程。但是,在網絡環境中進行圖像數據的傳輸,無疑會帶來較大的延時,同樣會對用戶體驗帶來影響。因此,如何將表格展示方式的傳輸數據量少優點和圖形化展示方式的直觀效果優點結合起來,提出一種既具有網絡負擔小,又可以在客戶端對大量服務的服務屬性進行圖形化展示的方法,對服務的發現和選擇具有重要的意義。
發明內容本發明所要解決的技術問題是,提出一種在低網絡負載的前提下、在客戶端將服務社區中注冊的服務屬性通過圖形化展示以進行服務選擇的Web服務屬性圖形化展示方法。為解決其技術問題本發明提供了一種Web服務屬性圖形化展示方法,該方法包括以下步驟查詢,客戶端向服務器端發出查詢請求,服務器端查詢后把獲得的服務信息數據發送到服務器端的XML數據源文件生成模塊;選擇服務屬性,XML數據源文件生成模塊根據服務信息數據選擇服務屬性,按預先設定的服務屬性與圖形屬性之間的對應關系把選擇的服務屬性與圖形屬性對應起來;構建數據源文件,XML數據源文件生成模塊釆用基于XML格式的數據描述文件來描述服務信息數據中的服務與服務、服務與分類之間的關系以及選擇的服務屬性的數據值以生成XML數據源文件;傳輸數據源文件,XML數據源文件從服務器端傳輸到客戶端;圖形化展示,客戶端的解析模塊對XML數據源文件進行解析,并通過繪圖技術來將解析結果生成圖形模型,客戶端的瀏覽器4巴圖形才莫型展示。本發明提供的Web服務屬性圖形化展示方法,在服務器端和客戶端之間傳輸的是XML數據源文件,網絡負擔小;而且在客戶端用圖形來展示服務屬性,使服務的各項屬性一目了然,通過圖形之間的差別來標識相同功能服務之間的屬性區別,使用戶能夠通過視覺刺激的方式來進行選擇,提升了用戶選擇Web服務過程的用戶體驗。圖1為實現本發明Web服務屬性圖形化展示方法的體系結構框圖。具體實施例方式通過對大量Web服務的分析,根據對Web服務屬性的研究,在眾多Web服務的屬性中,可提取出的、在本發明Web服務屬性圖形化展示方法中可以通過圖形展示的服務屬性有如表一所示的種類<table>tableseeoriginaldocumentpage6</column></row><table><table>tableseeoriginaldocumentpage7</column></row><table>本實施例采用平面圖形的形狀、顏色和大小這三種屬性來表示服務屬性,圖形屬性的表示方式如表二所示。表二圖形屬性說明圖形屬性名稱圖形漸變說明形狀□oo......〇方形表示值為0,值越大,多邊形越趨向于圓形。顏色從百色到黑色漸變白色表示值為0,值越大,顏色越深。大小多邊形外4妄圓的直徑大小外接圓最小直徑為4mm對應最小值;直徑最大為20mm,設置閥值,超過閥值,仍按20mm表示。本發明對于表一所示的服務屬性,用圖形界面中節點與節點的層次父子關系來表示服務的分類聚類信息,用節點的標簽來顯示服務名稱,用節點的形狀、尺寸和顏色這三種屬性來表示其余七類服務屬性中的三類服務屬性。這就意味著其余七類服務屬性中最多有三類可以通過圖形來表示。用圖形屬性的變化來體現服務屬性的差別,這就需要在量上把服務屬性的數據值與圖形屬性對應起來,才能把具有不同數據值的服務屬性用不同圖形來表示。服務屬性與圖形屬性的對應關系如表三所示。表三服務屬性與圖形屬性的對應關系服務的可用性(Availability)形狀□表示值為0,〇表示值為1。大小直徑4mm表示值為0,直徑20mm表示值為1。顏色填充色白色表示值為O,填充色黑色表示值為1服務的可訪問性(Accessibility)形狀□表示值為0,〇表示值為1。值不為1時,N邊形的N計算方式N=[accessibility*20+4]。大小直徑為4mm表示值為0,直徑20mm,表示值為1。直徑D的計算方式D=[accessibility*16+4]。<table>tableseeoriginaldocumentpage9</column></row><table><table>tableseeoriginaldocumentpage10</column></row><table>二、選擇服務屬性XML數據源文件生成模塊根據查詢所獲得的服務信息數據在表三所示的七類服務屬性中選擇其中的三類服務屬性,按預先設定的、如表三所示的服務屬性與圖形屬性之間的對應關系把選擇的三類服務屬性分別與圖形的形狀、顏色和大小屬性對應起來。進一步地,在該步驟中選擇服務屬性時,采用根據用戶的使用習慣,自適應地選擇用戶關心的服務屬性。用戶的使用習慣數據,可以在服務器端的數據庫進行持久化,持久化的數據庫表結構如表四所示。在用戶第一次使用該系統的情況,默認展示的三類服務屬性為服務的可用性,服務的可訪問性,服務價格。這三類服務屬性也可由用戶自行選擇。表四持久化的數據庫表結構UserID用戶的IDAvailabi1ity該用戶選4奪Avai1abi1ity的次凄tAccessibility該用戶選4奪Accessibility的次itResponse—time該用戶選捧Response—time的次數Thruput該用戶選擇Thruput的次凝Reliability該用戶選4奪Rellabiltiy屬性的次數Eenctyption該用戶選棒Enectyption屬'〖生的^欠數Price該用戶選4奪Price屬性的次凄t在進行自適應選擇的時候,系統根據該用戶選擇次數最多的三類服務屬性。用戶每手動選擇一次需要展示的服務屬性,則對應的該服務屬性的次數增加一次。自適應選擇的結果不累計到次數中。例如如果系統自適應選擇服務的可用性、服務的可訪問性和服務的延時這三類屬性進行圖形化展示,則這三類屬性對應的被選擇次數值不變。若用戶手動選擇服務的可用性、服務的可訪問性和服務的延時這三類屬性進行圖形化展示,則這三類屬性對應的被選擇此數值增加1。在初始狀態下,七類服務屬性被選擇的次數的值都為零。自適應選擇的三類服務屬性與圖形的形狀、大小和顏色這三種圖形屬性的對應關系,在初始化時隨機生成,用戶也可以自己手動調整。三、構建數據源文件XML數據源文件生成模塊采用基于XML格式的數據描述文件來描述查詢所獲得的服務信息數據中的服務與服務、服務與分類之間的關系以及所選擇的服務屬性的數據值以生成XML數據源文件,并把生成的XML數據源文件發送到Web服務器進行緩存。為了保持數據的一致性,特別是在條件查詢的情況下,圖形化數據源中的服務信息數據必須和服務社區中的服務查詢結果保持一致。特別是在分類查詢的情況下,需要遞歸找出所選分類下的所有服務和子分類及其下的服務。本發明在構建數據源文件步驟中釆取的方法是,先構造一棵服務類別樹,再根據條件將符合要求的服務掛載到這棵類別樹上以完成整個樹數據結構的構造工作,最后將此樹數據結構轉化為XML文件進行描述,在服務器端對XML數據源文件進行緩存,生成可訪問此緩存文件的URL。XML數據源文件的示例如下<xmlversion="1.0"encoding="UTF-8"><tree>-<declarations><attributeDeclname="node.service工D"type二"Long"/><attiributeDeclname="node.name"type="String"/><attributeDeclname="node.type"type=HInt"/><attributeDeclname="node.availability"type="Int"/><attributeDeclname="node.pricewtype="Float"/></declarations><branch><attributename="node.serviceID"value="0L"/><attributename="node.name"value二"Root"/><attributename="node.type"value="0"/><attributename="node.availability"value="-l"/><attributename="node.price"value="0.Of■'/><branch><attributename="node.service工D"value="0L"/><attributename="node.name"value="finance"/><attributename="node.type"value="0"/><attributename="node.availability"value="-l"/><attributename="node.price"value="0.Of"/><leaf><attributename="node.serviceID"value="3L"/><attributename="node.name"value-"Query"/><att:ributename="node.type"value="1"/><attributename-"node.availability"value="1"/><attributename="node.price"value="50.Of"/></leaf></b;ranch></branch></tree>四、傳輸數據源文件在XML數據源文件生成模塊生成XML數據源文件后,Web服務器將XML數據源文件訪問的URL返回給客戶端,客戶端根據URL獲取XML數據源文件。服務器端和客戶端通過HTTP協議進行交互。五、圖形化展示客戶端在獲得XML數據源文件后,客戶端的解析模塊對XML數據源文件進行解析,并通過繪圖技術來把解析結果生成圖形模型,客戶端的瀏覽器將圖形模型以圖形方式展示給用戶。通過圖形之間的差別來標識相同功能服務之間的屬性區別,使用戶能夠通過視覺刺激的方式來進行選擇,提升了用戶選擇Web服務過程的用戶體驗。客戶端的解析模塊采用了JavaApplet和Java2D繪圖技術,JavaApplet代碼可以在用戶端進^亍緩存,用戶在首次4吏用時從服務器端下載解析xml數據源文件和生成圖形界面的解析模塊后,在以后的使用過程中就不需要每次都進行這部分代碼的下載,服務器端和客戶端的數據交換只需要傳遞數據源文件大小的數據量就可以滿足客戶端圖形化展示的需要,使得客戶端與服務器端的數據量大小水平維持在相當小的水平,與傳統的表^f各呈現方式幾乎持平,大大降低了網絡流量的負擔。上述實施例僅用于對本發明構思的理解,并非對本發明的限制,才艮據本發明構思還可以作出一些簡單的變換,例如可以采用更為復雜的圖形,設定圖形多于三種屬性,例如四類、五類甚至七種屬性,相應地可以在選擇服務屬性步驟中選擇相應數量類別的服務屬性,按預先設定的服務屬性與圖形屬性之間的對應關系把選擇的服務屬性與圖形屬性對應起來,從而可以在客戶端圖形化展示相應數量類別的服務屬性。權利要求1、一種Web服務屬性圖形化展示方法,其特征在于,包括以下步驟查詢客戶端向服務器端發出查詢請求,所述服務器端查詢后把獲得的服務信息數據發送到所述服務器端的XML數據源文件生成模塊;選擇服務屬性所述XML數據源文件生成模塊根據所述服務信息數據選擇服務屬性,按預先設定的服務屬性與圖形屬性之間的對應關系把選擇的服務屬性與圖形屬性對應起來;構建數據源文件所述XML數據源文件生成模塊采用基于XML格式的數據描述文件來描述所述服務信息數據中的服務與服務、服務與分類之間的關系以及所述選擇的服務屬性的數據值以生成XML數據源文件;傳輸數據源文件所述XML數據源文件從所述服務器端傳輸到所述客戶端;圖形化展示所述客戶端的解析模塊對所述XML數據源文件進行解析,并通過繪圖技術來將解析結果生成圖形模型,所述客戶端的瀏覽器把所述圖形模型展示。2、根據權利要求1所述的Web服務屬性圖形化展示方法,其特征在于,在所述選擇服務屬性步驟中,在服務的可用性、可訪問性、延時、吞吐量、可靠性、安全性和價格這七類服務屬性中選擇其中的三類服務屬性,按預先設定的服務屬性與圖形屬性之間的對應關系把選擇的三類服務屬性分別與圖形的形狀、顏色和大小屬性對應起來。3、根據權利要求2所述的Web服務屬性圖形化展示方法,其特征在于,在所述選擇服務屬性步驟中,選^t奪用戶選擇次數最多的三類服務屬性。4、根據權利要求3所述的Web服務屬性圖形化展示方法,其特征在于,在所述構建數據源文件步驟中,先構造一棵服務類別樹,然后再將符合要求的服務掛載在所述服務類別樹上以構造樹數據結構,最后將所述樹數據結構轉化為XML數據源文件。5、根據權利要求1-4任一項所述的Web服務屬性圖形化展示方法,其特征在于,在所述圖形化展示步驟中,所述解析模塊由用戶在首次使用時從所述服務器端下載。6、根據權利要求5所述的Web服務屬性圖形化展示方法,其特征在于,在所述圖形化展示步驟中,所述解析模塊采用Java2D繪圖技術來把所述XML數據源文件的解析結果生成圖形模型。全文摘要本發明提供了一種Web服務屬性圖形化展示方法,該方法根據查詢獲得的服務信息數據選擇服務屬性,并把選擇的服務屬性與圖形屬性對應起來,通過XML數據源文件生成模塊來構建XML數據源文件,客戶端的解析模塊在接收到XML數據源文件后對XML數據源文件進行解析,并通過繪圖技術來生成圖形模型,最后由客戶端的瀏覽器圖形化顯示服務屬性。本發明具有網絡負擔小和圖形化直觀展示的優點。文檔編號G06F17/30GK101630328SQ200910102139公開日2010年1月20日申請日期2009年8月20日優先權日2009年8月20日發明者健吳,吳朝暉,宋仲凱,尹建偉,瑩李,鄧水光申請人:浙江大學