Web Service接口的生成方法及裝置制造方法
【專利摘要】本發明公開一種Web?Service接口的生成方法,包括以下步驟:接收到Web?Service接口生成請求時,獲取Web?Service接口生成請求中的Web?Service接口配置信息;將所述Web?Service接口配置信息發送到相應的Web?Service站點上;調用SOA服務框架對Web?Service接口配置信息進行解析,并生成動態的Web?Service接口。本發明還公開了一種Web?Service接口的生成裝置。本發明實施例通過調用SOA服務框架對所定義的服務接口信息進行解析,以生成動態的Web?Service接口。因此,本發明實施例使得Web?Service接口的發布更加靈活,簡單。
【專利說明】Web Service接口的生成方法及裝置
【技術領域】
[0001]本發明涉及計算機領域,尤其涉及一種Web Service接口的生成方法及裝置。
【背景技術】
[0002]現有的企業業務系統中,有一些業務已經提供了 Web Service,供異構系統訪問,從而使得企業業務系統可以整合第三方應用的能力,對業務進行更好地處理。
[0003]雖然現有的業務系統中能提供與異構系統集成的Web Service接口,但是該WebService接口的作用范圍在開發時就已經被固化;iWeb Service接口不再滿足需求時,貝Ij需要重新設計原有接口或者增加新的接口,從而增加了開發成本。
【發明內容】
[0004]本發明的主要目的在于提供一種Web Service接口的生成方法及裝置,旨在使得Web Service接口的發布更加靈活,簡單。
[0005]本發明提供了一種Web Service接口的生成方法,包括以下步驟:
[0006]接收到Web Service接口生成請求時,獲取Web Service接口生成請求中的WebService接口配置信息;
[0007]將所述Web Service接口配置信息發送到相應的Web Service站點上;
[0008]調用SOA服務框架對Web Service接口配置信息進行解析,并生成動態的WebService 接 P。
[0009]優選地,所述Web Service接口配置信息包括Web Service的配置界面、WebService的發布對象以及Web Service的服務類型。
[0010]優選地,所述將Web Service接口配置信息發送到相應的Web Service站點上包括:
[0011]根據所述Web Service接口配置信息,通過業務站點的Web服務發布和動態服務工具來構建相應的Web Service站點。
[0012]優選地,所述動態的Web Service接口包括單據實體數據參數和自定義參數。
[0013]優選地,所述生成動態的Web Service接口之后還包括:
[0014]將所生成的Web Service接口通過適配器接入服務總線。
[0015]本發明還提供了一種Web Service接口的生成裝置,包括:
[0016]接口信息輸入模塊,用于接收到Web Service接口生成請求時,獲取Web Service接口生成請求中的Web Service接口配置信息;
[0017]接口信息發送模塊,用于將所述Web Service接口配置信息發送到相應的WebService站點上;
[0018]接口生成模塊,用于調用SOA服務框架對Web Service接口配置信息進行解析,并生成動態的Web Service接口。
[0019]優選地,所述Web Service接口配置信息包括Web Service的配置界面、WebService的發布對象以及Web Service的服務類型。
[0020]優選地,所述接口信息發送模塊用于:
[0021]根據所述Web Service接口配置信息,通過業務站點的Web服務發布和動態服務工具來構建相應的Web Service站點。
[0022]優選地,所述動態的Web Service接口包括單據實體數據參數和自定義參數。
[0023]優選地,所述生成裝置還包括:
[0024]接口接入模塊,用于將所生成的Web Service接口通過適配器接入服務總線。
[0025]本發明實施例通過調用SOA服務框架對所定義的服務接口信息進行解析,以生成動態的Web Service接口。因此,本發明實施例使得Web Service接口的發布更加靈活,簡單。
【專利附圖】
【附圖說明】
[0026]圖1是本發明Web Service接口的生成方法第一實施例的流程示意圖;
[0027]圖2是本發明Web Service接口的生成方法第二實施例的流程示意圖;
[0028]圖3是本發明中第三方應用通過服務總線訪問業務系統發布的Web Service接口的不意圖;
[0029]圖4是本發明Web Service接口的生成裝置第一實施例的功能模塊示意圖;
[0030]圖5是本發明Web Service接口的生成裝置第二實施例的功能模塊示意圖。
[0031]本發明目的的實現、功能特點及優點將結合實施例,參照附圖做進一步說明。
【具體實施方式】
[0032]以下結合說明書附圖及具體實施例進一步說明本發明的技術方案。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
[0033]本發明的主要思想是通過在業務系統中定義要發布的服務接口信息,然后根據該服務接口信息,將該要發布的服務發布到可供訪問的Web Service站點上,然后調用SOA服務框架對Web Service接口配置信息進行解析,并生成動態的Web Service接口。
[0034]在描述本發明具體實施例之前,將本發明用到的專用術語進行一一介紹:
[0035]操作:單據上工具欄按鈕所具有的特定功能,通過點擊按鈕而調用相應的功能。
[0036]單據:在業務系統中,單據是經過抽象后的業務數據和業務邏輯的載體,而且單據在業務系統中保存為單據元數據。
[0037]ESB:ESB全稱為Enterprise Service Bus,即企業服務總線。它是傳統中間件技術與XML、Web服務等技術結合的產物。ESB提供了網絡中最基本的連接中樞,是構筑企業神經系統的必要元素。ESB可以提供比傳統中間件產品更為廉價的解決方案,同時它還可以消除不同應用之間的技術差異,讓不同的應用服務器協調運作,實現了不同服務之間的通
信與整合。
[0038]動態領域模型:根據業務系統的不同業務單元抽象出來的計算機信息模型,用來描述不同的業務對象,例如:單據一銷售訂單,基礎資料一物料等等。
[0039]SOA服務框架:全稱Service-Oriented Architecture服務框架,面向服務的體系架構服務框架。其是一個組件模型,它將應用程序的不同功能單元(稱為服務)通過這些服務之間定義良好的接口和契約聯系起來。該良好的接口是采用中立的方式進行定義的,它應該獨立于實現服務的硬件平臺、操作系統和編程語言。這使得構建在各種這樣的系統中的服務可以以一種統一和通用的方式進行交互。
[0040]基于上述專用術語,本發明提出了一種Web Service接口的生成方法,如圖1所示,該Web Service接口的生成方法包括以下步驟:
[0041]步驟SI 10、接收到Web Service接口生成請求時,獲取Web Service接口生成請求中的Web Service配置信息;
[0042]Web Service接口配置信息包括Web Service的配置界面、Web Service的發布對象以及Web Service的服務類型。該Web Service的發布對象主要為業務單據。由于業務單據具有統一的動態領域模型,能夠根據不同的業務單元,抽象出不同的業務領域模型,領域模型具有一些共性和一些差異性。具體某個動態領域模型的關系可能是模型對應元素,元素對應屬性,而單據上的操作作為服務,掛接到具體的單據的某個屬性上,例如屬性:操作列表。所有的單據都可以自由配置一樣的服務,例如保存、查看、刪除、修改、提交、審核等等。因此,可以針對單據的共有功能而配置相應的Web Service接口信息,以生成WebService接口供外部調用。
[0043]步驟S120、將所述Web Service配置信息發送到相應的Web Service站點上;
[0044]根據所述Web Service配置信息,通過業務站點的Web服務發布和動態服務工具來構建相應的Web Service站點。由于業務系統應用環境具有多個數據中心,多個Web服務器,而服務接口站點只能針對一個數據中心,而且可能會部署到能夠接入Internet的服務器上。因此,根據要發布的服務支持的數據中心,而將該要發布的服務發布到相應的WebService站點上,從而可以屏蔽發布的復雜度。
[0045]步驟S130、調用SOA服務框架對Web Service接口配置信息進行解析,并生成動態的 Web Service 接口。
[0046]當將服務信息發布到相應的Web Service站點上后,SOA服務框架將根據服務要發布的數據中心,對Web Service接口配置信息進行解析,并生成動態的Web Service接□。
[0047]進一步地,該業務系統還可以擴展系統中不存在的服務,只需要在單據行添加一個自定義操作,然后在動態服務定義功能中新增該操作服務的定義。最后動態生成的WebService接口中將包括單據實體數據參數和自定義參數。
[0048]本發明實施例通過調用SOA服務框架對所定義的服務接口信息進行解析,以生成動態的Web Service接口。因此,本發明實施例使得Web Service接口的發布更加靈活,簡單。
[0049]進一步地,參照圖2,提出本發明Web Service接口的生成方法的第二實施例。本實施例中,在上述實施例的步驟S130之后還包括:
[0050]步驟S140、將所生成的Web Service接口通過適配器接入服務總線。
[0051 ] 通過ESB的應用適配器框架實現業務系統應用適配器,通過該適配器的UI進行接入參數配置后,ESB導入業務系統的服務契約,動態生成ESB的數據契約,這些契約可以參與ESB的數據映射和轉換。如圖3所示,業務系統生成的Web Service接口將通過適配器接入服務總線ESB。同時,第三方應用也通過自身的服務接口連接到服務總線上。由此第三方應用需要訪問某個業務服務時,只需將其訪問請求發送至服務總線,而通過服務總線進行請求的送達及數據的轉發。
[0052]本發明實施例通過將生成的Web Service接口通過適配器接入服務總線,從而在服務接口的訪問時,不再需要直接找到訪問的服務接口,而是使用自己的服務接口訪問服務總線,即可實現對業務系統的相應服務接口的訪問。
[0053]參照圖4,提出本發明一種Web Service接口的生成裝置第一實施例。該實施例的Web Service接口的生成裝置包括:
[0054]接口信息輸入模塊110,用于接收到Web Service接口生成請求時,獲取WebService接口生成請求中的Web Service接口配置信息;
[0055]接口信息發送模塊120,用于將所述Web Service接口配置信息發送到相應的WebService站點上;
[0056]接口生成模塊130,用于調用SOA服務框架對Web Service接口配置信息進行解析,并生成動態的Web Service接口。
[0057]上述Web Service接口配置信息包括Web Service的配置界面、Web Service的發布對象以及Web Service的服務類型。該Web Service的發布對象主要為業務單據。由于業務單據具有統一的動態領域模型,能夠根據不同的業務單元,抽象出不同的業務領域模型,領域模型具有一些共性和一些差異性。具體某個動態領域模型的關系可能是模型對應元素,元素對應屬性,而單據上的操作作為服務,掛接到具體的單據的某個屬性上,例如屬性:操作列表。所有的單據都可以自由配置一樣的服務,例如保存、查看、刪除、修改、提交、審核等等。因此,可以針對單據的共有功能而配置相應的Web Service接口信息,以生成Web Service接口供外部調用。
[0058]接口信息發送模塊120根據所述Web Service配置信息,通過業務站點的Web服務發布和動態服務工具來構建相應的Web Service站點。由于業務系統應用環境具有多個數據中心,多個Web服務器,而服務接口站點只能針對一個數據中心,而且可能會部署到能夠接入Internet的服務器上。因此,根據要發布的服務支持的數據中心,而將該要發布的服務發布到相應的Web Service站點上,從而可以屏蔽發布的復雜度。
[0059]當將服務信息發布到相應的Web Service站點上后,接口生成模塊130將調用SOA服務框架,以使SOA服務框架根據服務要發布的數據中心,對Web Service接口配置信息進行解析,并生成動態的Web Service接口。
[0060]本發明實施例通過調用SOA服務框架對所定義的服務接口信息進行解析,以生成動態的Web Service接口。因此,本發明實施例使得Web Service接口的發布更加靈活,簡單。
[0061]進一步地,參照圖5,提出本發明Web Service接口的生成裝置第二實施例。該實施例的Web Service接口的生成裝置還包括:
[0062]接口接入模塊140,用于將所生成的Web Service接口通過適配器接入服務總線。
[0063]通過ESB的應用適配器框架實現業務系統應用適配器,通過該適配器的UI進行接入參數配置后,ESB導入業務系統的服務契約,動態生成ESB的數據契約,這些契約可以參與ESB的數據映射和轉換。如圖3所示,業務系統生成的Web Service接口將通過適配器接入服務總線ESB。同時,第三方應用也通過自身的服務接口連接到服務總線上。由此第三方應用需要訪問某個業務服務時,只需將其訪問請求發送至服務總線,而通過服務總線進行請求的送達及數據的轉發。
[0064]本發明實施例通過將生成的Web Service接口通過適配器接入服務總線,從而在服務接口的訪問時,不再需要直接找到訪問的服務接口,而是使用自己的服務接口訪問服務總線,即可實現對業務系統的相應服務接口的訪問。
[0065]需要說明的是,在本文中,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者裝置不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者裝置所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括該要素的過程、方法、物品或者裝置中還存在另外的相同要素。
[0066]上述本發明實施例序號僅僅為了描述,不代表實施例的優劣。
[0067]通過以上的實施方式的描述,本領域的技術人員可以清楚地了解到上述實施例方法可借助軟件加必需的通用硬件平臺的方式來實現,當然也可以通過硬件,但很多情況下前者是更佳的實施方式。基于這樣的理解,本發明的技術方案本質上或者說對現有技術做出貢獻的部分可以以軟件產品的形式體現出來,該單據行為的控制裝置均將通過若干指令實現,該若干指令存儲在一個存儲介質(如R0M/RAM、磁碟、光盤)中,供終端設備(可以是手機,計算機,服務器,或者網絡設備等)的處理器執行本發明各個實施例所述的方法。
[0068]以上所述 僅為本發明的優選實施例,并非因此限制其專利范圍,凡是利用本發明說明書及附圖內容所作的等效結構或等效流程變換,直接或間接運用在其他相關的【技術領域】,均同理包括在本發明的專利保護范圍內。
【權利要求】
1.一種Web Service接口的生成方法,其特征在于,包括以下步驟: 接收到Web Service接口生成請求時,獲取Web Service接口生成請求中的WebService接口配置信息; 將所述Web Service接口配置信息發送到相應的Web Service站點上; 調用SOA服務框架對Web Service接口配置信息進行解析,并生成動態的Web Service接口。
2.根據權利要求1所述的WebService接口的生成方法,其特征在于,所述WebService接口配置信息包括Web Service的配置界面、Web Service的發布對象以及WebService的服務類型。
3.根據權利要求2所述的WebService接口的生成方法,其特征在于,所述將WebService接口配置信息發送到相應的Web Service站點上包括: 根據所述Web Service接口配置信息,通過業務站點的Web服務發布和動態服務工具來構建相應的Web Service站點。
4.根據權利要求1所述的WebService接口的生成方法,其特征在于,所述動態的WebService接口包括單據實體數據參數和自定義參數。
5.根據權利要求1所述的WebService接口的生成方法,其特征在于,所述生成動態的Web Service接口之后還包括: 將所生成的Web Service接口通過適配器接入服務總線。
6.一種Web Service接口的生成裝置,其特征在于,包括: 接口信息輸入模塊,用于接收到Web Service接口生成請求時,獲取Web Service接口生成請求中的Web Service接口配置信息; 接口信息發送模塊,用于將所述Web Service接口配置信息發送到相應的Web Service站點上; 接口生成模塊,用于調用SOA服務框架對Web Service接口配置信息進行解析,并生成動態的Web Service接口。
7.根據權利要求6所述的WebService接口的生成裝置,其特征在于,所述WebService接口配置信息包括Web Service的配置界面、Web Service的發布對象以及WebService的服務類型。
8.根據權利要求7所述的WebService接口的生成裝置,其特征在于,所述接口信息發送模塊用于: 根據所述Web Service接口配置信息,通過業務站點的Web服務發布和動態服務工具來構建相應的Web Service站點。
9.根據權利要求6所述的WebService接口的生成裝置,其特征在于,所述動態的WebService接口包括單據實體數據參數和自定義參數。
10.根據權利要求6所述的WebService接口的生成裝置,其特征在于,所述生成裝置還包括: 接口接入模塊,用于將所生成的Web Service接口通過適配器接入服務總線。
【文檔編號】H04L29/08GK103561113SQ201310578710
【公開日】2014年2月5日 申請日期:2013年11月18日 優先權日:2013年11月18日
【發明者】劉兵, 張利軍 申請人:金蝶軟件(中國)有限公司