亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

用于傳統(tǒng)組件的動(dòng)態(tài)服務(wù)生成的制作方法

文檔序號(hào):7952847閱讀:234來源:國(guó)知局
專利名稱:用于傳統(tǒng)組件的動(dòng)態(tài)服務(wù)生成的制作方法
技術(shù)領(lǐng)域
本發(fā)明一般涉及web服務(wù)。更具體而言,本發(fā)明能夠?yàn)椴槐婚_發(fā)成在web服務(wù)環(huán)境內(nèi)通信的傳統(tǒng)應(yīng)用程序組件生成動(dòng)態(tài)web服務(wù)。
背景技術(shù)
計(jì)算機(jī)系統(tǒng)和相關(guān)技術(shù)影響著社會(huì)的許多方面。實(shí)際上,計(jì)算機(jī)系統(tǒng)處理信息的能力已經(jīng)改變了人們生活和工作的方式。計(jì)算機(jī)系統(tǒng)現(xiàn)在通常執(zhí)行在計(jì)算機(jī)系統(tǒng)的出現(xiàn)之前手動(dòng)執(zhí)行的大量任務(wù)(例如,文字處理、調(diào)度、數(shù)據(jù)庫管理等)。近來,計(jì)算機(jī)系統(tǒng)被彼此耦合以形成計(jì)算機(jī)網(wǎng)絡(luò),通過計(jì)算機(jī)網(wǎng)絡(luò),計(jì)算機(jī)系統(tǒng)可電子地通信以共享數(shù)據(jù)。web服務(wù)已成為了推進(jìn)計(jì)算機(jī)系統(tǒng)之間的這一通信的驅(qū)動(dòng)力,且正在徹底轉(zhuǎn)變?nèi)藗儤?gòu)建和使用軟件的方式。
web服務(wù)讓應(yīng)用程序能夠共享數(shù)據(jù),且更強(qiáng)有力地調(diào)用來自其它應(yīng)用程序的能力而無需關(guān)注這些應(yīng)用程序是如何構(gòu)建的、它們運(yùn)行在什么操作系統(tǒng)或平臺(tái)上、以及使用什么設(shè)備來訪問它們。web服務(wù)是通過包括SOAP(簡(jiǎn)單開放訪問協(xié)議)、XML(可擴(kuò)展標(biāo)記語言)、UDDI(通用描述發(fā)現(xiàn)集成)、WSDL(web服務(wù)描述語言)等行業(yè)標(biāo)準(zhǔn)協(xié)議在因特網(wǎng)上調(diào)用的。盡管web服務(wù)保持彼此獨(dú)立,但是它們可將其自身松散地耦合到執(zhí)行特定任務(wù)的協(xié)作組中。
通常,web服務(wù)網(wǎng)絡(luò)上的電子通信包括請(qǐng)求對(duì)服務(wù)器計(jì)算機(jī)系統(tǒng)(后文稱為“服務(wù)器”、“服務(wù)”或“web服務(wù)”)處的網(wǎng)絡(luò)服務(wù)(例如,web服務(wù))的訪問的客戶機(jī)計(jì)算機(jī)系統(tǒng)(后文稱為“客戶機(jī)”)。因此,客戶機(jī)向服務(wù)發(fā)送對(duì)其系統(tǒng)資源的特定訪問的請(qǐng)求,其中,如果客戶機(jī)被授權(quán)和確認(rèn),則服務(wù)用提供期望信息的響應(yīng)消息來響應(yīng)。當(dāng)然,客戶機(jī)和服務(wù)之間的其它消息通信模式是可用的,且包括簡(jiǎn)單的單消息以及更復(fù)雜的多消息交換,如通知、請(qǐng)求—響應(yīng)、發(fā)布—訂閱模式、輪詢、踢—推(kick-push)、排隊(duì)以及其它。此外,這些類型的通信是由客戶機(jī)和服務(wù)在用于分布式系統(tǒng)(例如,web服務(wù))的契約中定義的各種要求和能力來支配的。
契約是服務(wù)(或客戶機(jī))行為的可見方面的表達(dá)。契約是由機(jī)器可讀和人類語言的混合來表示的。除顯然的機(jī)會(huì)可能有額外的精確度之外,機(jī)器可讀語言使得能用工具構(gòu)造部分服務(wù)實(shí)現(xiàn)、自動(dòng)化服務(wù)部署、監(jiān)察/確認(rèn)所交換的消息、管理服務(wù)、以及啟用大量其它的網(wǎng)絡(luò)相關(guān)功能。然而,由于機(jī)器可讀語言的表達(dá)能力的局限,人類可讀語言仍是契約的一個(gè)重要組成部分,它主要用于描述消息和消息交換模式語義。
網(wǎng)絡(luò)協(xié)議描述語言(例如,WSDL)提供了用于以公共或標(biāo)準(zhǔn)語言描述契約(例如,web服務(wù)契約)的總體包裝或規(guī)范。這一規(guī)范使得開發(fā)者和開發(fā)者工具易于創(chuàng)建和解釋契約。這些網(wǎng)絡(luò)協(xié)議描述語言(后文稱為“NPDL”)具有廣泛的工具套件,這很大一部分考慮到其普及性。
在web服務(wù)的出現(xiàn)之前,多年以來,大量分布式應(yīng)用程序是使用來自各銷售商的基于傳統(tǒng)組件的體系結(jié)構(gòu)(例如,COM(組件對(duì)象模型)、DCOM(分布式組件對(duì)象模型)、CORBA(公共對(duì)象請(qǐng)求代理體系結(jié)構(gòu)))來編寫的。然而,隨著基于標(biāo)準(zhǔn)的web服務(wù)的到來和前進(jìn),所關(guān)注的是將來自傳統(tǒng)組件的業(yè)務(wù)邏輯展示為web服務(wù)。作為一個(gè)實(shí)例,且不管后續(xù)的方法是什么,意圖通常是采用諸如支持以下接口的應(yīng)用程序組件Interface IStockSystem:IDispatch{HRESULT GetProductDescription([in]BSTR ProductID,[out,retval]BSTR*ProdDesc);
HRESULT GetProductInventory([in]BSTR ProductID,[out,retval]short*ProdCount);
};
并且從該組件定義中產(chǎn)生具有在以下列WSDL片段示出的若干操作的對(duì)應(yīng)的web服務(wù)層<wsdl:portType name=“StockSystem”>
<wsdl:operation name=“GetProductDescription”>
<wsdl:input message=“tns:GetProductDescriptionIn”/>
<wsdl:output message=“tns:GetProductDescriptionOut”/>
</wsdl:operation>
<wsdl:operation name=“GetProductInventory”>
<wsdl:input message=“tns:GetProductInventoryIn”/>
<wsdl:output message=“tns:GetProductInventoryOut”/>
</wsdl:operation>
</wsdl:portType>
至今為止,僅遵循了幾個(gè)主要模式或方法以在web服務(wù)環(huán)境內(nèi)轉(zhuǎn)換或使用傳統(tǒng)組件。一種方法是遷移或修改,這要求開發(fā)者修改組件源代碼以添加web服務(wù)支持。當(dāng)編譯和執(zhí)行應(yīng)用程序時(shí),應(yīng)用程序?qū)⒁赃m當(dāng)?shù)膚eb服務(wù)支持啟動(dòng),而仍允許傳統(tǒng)客戶機(jī)連接到底層應(yīng)用程序。
另一方法是工具安裝和元數(shù)據(jù)驅(qū)動(dòng)方法,這產(chǎn)生靜態(tài)包裝服務(wù)。并非要求組件源代碼修改,而是該方法使用了一種更外部的方法來檢查組件的現(xiàn)有的已注冊(cè)元數(shù)據(jù)來確定該組件應(yīng)當(dāng)提供的服務(wù)。這產(chǎn)生了對(duì)底層的未修改組件外部的,但至少最初與其相一致的靜態(tài)web服務(wù)包裝。
盡管上述修改和靜態(tài)方法使得傳統(tǒng)組件的業(yè)務(wù)邏輯能夠在web服務(wù)環(huán)境中訪問,然而仍存在與這兩個(gè)方法相關(guān)聯(lián)的若干缺點(diǎn)和問題。例如,由于修改方法要求源代碼修改,即使在不需要改變業(yè)務(wù)邏輯時(shí)也是如此,因此這是一項(xiàng)開發(fā)任務(wù)而非簡(jiǎn)單的管理過程。因此,這一任務(wù)超出了傳統(tǒng)管理員角色的范圍,且要求附加的技能組。另外,使用原始的編碼環(huán)境可能無法使啟用web服務(wù)的開發(fā)修改可供使用。例如,在修改使用不再支持的傳統(tǒng)語言編寫的組件的情況下,該組件首先必須移植到當(dāng)前語言。因此,最初看上去像向方法添加屬性的修改實(shí)際上是遷移到不同的語言、運(yùn)行庫和開發(fā)環(huán)境。
在靜態(tài)工具安裝方法中,當(dāng)修改底層組件或部署新版本時(shí)存在問題。在這一情況下,在重新生成包裝服務(wù)之前,改變不會(huì)自動(dòng)在該服務(wù)中得到反映。另外,對(duì)于web服務(wù)操作,在服務(wù)和底層組件之間存在明確的依賴性。因此,必須小心地確保組件的生存期和web服務(wù)是同步的(即,包裝服務(wù)要求組件是活動(dòng)的,且組件要求包裝是活動(dòng)的)。此外,取決于包裝的環(huán)境和外部特性,通常存在要部署和管理的一個(gè)附加組件。換言之,如果組件被移至另一機(jī)器,則也必須相應(yīng)地標(biāo)識(shí)和移動(dòng)包裝組件。
至少為以上原因,需要提供一種用于傳統(tǒng)組件的web服務(wù)和業(yè)務(wù)邏輯,而無需開發(fā)者修改底層組件源代碼,從而允許組件修改或版本確定,以及支持服務(wù)和底層組件之間明確的依賴性。

發(fā)明內(nèi)容
在web服務(wù)環(huán)境中為傳統(tǒng)組件提供服務(wù)和業(yè)務(wù)邏輯的系統(tǒng)的上述缺陷和不足通過本發(fā)明的示例性實(shí)施例得以克服。例如,本發(fā)明能夠通過允許管理事件在傳統(tǒng)應(yīng)用程序組件的初始化期間導(dǎo)致動(dòng)態(tài)web服務(wù)的生成,為不被開發(fā)成在web服務(wù)環(huán)境中通信的傳統(tǒng)應(yīng)用程序組件生成動(dòng)態(tài)web服務(wù)。
示例性實(shí)施例能夠接收初始化應(yīng)用程序的請(qǐng)求。該應(yīng)用程序包括不被開發(fā)成與web服務(wù)應(yīng)用程序通信的一個(gè)或多個(gè)傳統(tǒng)組件。在初始化之后,標(biāo)識(shí)管理配置設(shè)置,它指示了在應(yīng)用程序的初始化之后要為一個(gè)或多個(gè)傳統(tǒng)組件生成動(dòng)態(tài)web服務(wù)。基于該管理配置設(shè)置,訪問描述用于與一個(gè)或多個(gè)傳統(tǒng)組件通信的接口。該元數(shù)據(jù)然后可用于自動(dòng)生成與接口描述相一致的動(dòng)態(tài)web服務(wù),以允許web服務(wù)客戶機(jī)通過轉(zhuǎn)換過程與一個(gè)或多個(gè)傳統(tǒng)組件通信。
本發(fā)明的其它特征和優(yōu)點(diǎn)將在以下描述中陳述,且部分將從該描述中變得明顯,或可通過對(duì)本發(fā)明的實(shí)踐而學(xué)到。本發(fā)明的特征和優(yōu)點(diǎn)可通過所附權(quán)利要求書中特別指出的裝置和組合來實(shí)現(xiàn)和獲得。本發(fā)明的這些和其它特征可從以下描述和所附權(quán)利要求書中變得完全明白,或者可通過如下所述的對(duì)本發(fā)明的實(shí)踐而學(xué)到。


為描述可獲得本發(fā)明的上述和其它優(yōu)點(diǎn)和特征的方式,將參考附圖中示出的其特定實(shí)施例來呈現(xiàn)以上簡(jiǎn)要描述的本發(fā)明的更具體描述。要理解,這些附圖僅描繪了本發(fā)明的典型實(shí)施例,且因此并不被認(rèn)為是限制其范圍,本發(fā)明將通過使用附圖以附加的特殊性和細(xì)節(jié)來描述和解釋,附圖中圖1示出了依照本發(fā)明的示例實(shí)施例被配置成創(chuàng)建動(dòng)態(tài)web服務(wù)的分布式系統(tǒng);圖2示出了依照本發(fā)明的示例實(shí)施例為傳統(tǒng)應(yīng)用程序組件生成動(dòng)態(tài)web服務(wù)的方法的流程圖;圖3示出了為本發(fā)明提供合適的操作環(huán)境的示例系統(tǒng)。
具體實(shí)施例方式
本發(fā)明提供了用于為不被開發(fā)成在web服務(wù)環(huán)境內(nèi)通信的傳統(tǒng)應(yīng)用程序組件生成動(dòng)態(tài)web服務(wù)的方法、系統(tǒng)和計(jì)算機(jī)程序產(chǎn)品。本發(fā)明的實(shí)施例可包括包含如下更詳細(xì)討論的各種計(jì)算機(jī)硬件組件或模塊的專用或通用計(jì)算機(jī)。
本發(fā)明提供了一種允許管理事件在傳統(tǒng)應(yīng)用程序組件的初始化期間觸發(fā)或?qū)е聞?dòng)態(tài)web服務(wù)的生成的機(jī)制。類似于其它靜態(tài)工具安裝方法,如此處所支持的動(dòng)態(tài)方法使用了描述用于與傳統(tǒng)組件通信的接口的可用元數(shù)據(jù)。并非在一次性或偶然的基礎(chǔ)上通過工具安裝來生成和表現(xiàn)web服務(wù),而是在示例性實(shí)施例中,由作為應(yīng)用程序初始化的一個(gè)標(biāo)準(zhǔn)部件的支持基礎(chǔ)結(jié)構(gòu)來生成web服務(wù)。在停止應(yīng)用程序之后,提供停止對(duì)應(yīng)的動(dòng)態(tài)web服務(wù)并刪除用于生成該動(dòng)態(tài)web服務(wù)的web服務(wù)描述的終止序列。因此,每次當(dāng)啟動(dòng)應(yīng)用程序時(shí),需要參考可用的元數(shù)據(jù),并且將在進(jìn)行中構(gòu)建一致的服務(wù)。
用于生成web服務(wù)的動(dòng)態(tài)方法具有優(yōu)于現(xiàn)有技術(shù)系統(tǒng)的若干優(yōu)點(diǎn)。例如,由于對(duì)原始的組件沒有任何修改,因此該動(dòng)態(tài)方法通過管理操作啟用web服務(wù)。該管理操作可以是在啟動(dòng)應(yīng)用程序之后即啟用web服務(wù)的簡(jiǎn)單配置實(shí)用程序。通過允許基于配置設(shè)置來生成web服務(wù),管理員可促使動(dòng)態(tài)web服務(wù)的創(chuàng)建,而不需要較高的開發(fā)者技能組。此外,由于不需要任何代碼級(jí)遷移工作,因此用于傳統(tǒng)組件的支持基礎(chǔ)結(jié)構(gòu)允許它保留在對(duì)應(yīng)的傳統(tǒng)語言中。
另外,依照示例實(shí)施例所描述的動(dòng)態(tài)方法具有優(yōu)于靜態(tài)工具安裝方法的以下優(yōu)點(diǎn)。首先,不管何時(shí)修改底層組件或開發(fā)新版本,將總是產(chǎn)生與組件定義相一致的web服務(wù)。因此,不與web服務(wù)同步的組件將不再有運(yùn)行的機(jī)會(huì)。另外,服務(wù)的生存期可被容易地緊密耦合到傳統(tǒng)組件的生存期,因?yàn)閯?dòng)態(tài)web服務(wù)啟動(dòng)(和生成)現(xiàn)在是組件啟動(dòng)的一部分。另一優(yōu)點(diǎn)是,沒有附加的包裝組件要部署和管理。這是由于這樣的事實(shí),如下文更詳細(xì)描述的,當(dāng)應(yīng)用程序不再運(yùn)行時(shí),沒有服務(wù)的表現(xiàn)。因此,將按需生成動(dòng)態(tài)web服務(wù),使得可保證它總是在適當(dāng)?shù)奈恢谩Q言之,當(dāng)在機(jī)器之間轉(zhuǎn)移時(shí),無需對(duì)web服務(wù)組件和傳統(tǒng)組件進(jìn)行變換。
圖1示出了如上所述的各種示例性實(shí)施例。如圖所示,提供了支持web服務(wù)客戶機(jī)145和傳統(tǒng)客戶機(jī)105兩者的分布式系統(tǒng)100,由此允許對(duì)面向服務(wù)110的應(yīng)用程序125進(jìn)行訪問。更具體地,向服務(wù)110提供了包括傳統(tǒng)組件135的應(yīng)用程序125。示例實(shí)施例允許管理員(未示出)設(shè)置管理配置設(shè)置155,它指示了應(yīng)當(dāng)在啟動(dòng)應(yīng)用程序125之后即生成動(dòng)態(tài)web服務(wù)175。因此,基于管理配置設(shè)置155,在應(yīng)用程序125啟動(dòng)之后(以及可能服從從應(yīng)用程序?qū)S门渲梦募欣龅钠渌渲?,web服務(wù)初始化器180將訪問來自目錄數(shù)據(jù)庫165的元數(shù)據(jù)160。注意,示例實(shí)施例允許用于應(yīng)用程序125(以及對(duì)應(yīng)的動(dòng)態(tài)web服務(wù)175)的初始化的若干種方式。例如,對(duì)應(yīng)用程序125的初始化的請(qǐng)求可通過來自管理員用戶界面的輸入來接收。在其它示例實(shí)施例中,在接收到對(duì)訪問由應(yīng)用程序125提供的服務(wù)的請(qǐng)求140(或其它類似類型的請(qǐng)求)之后即自動(dòng)初始化應(yīng)用程序125。當(dāng)然,初始化應(yīng)用程序125的其它公知的方式也可用于本發(fā)明。因此,用于初始化應(yīng)用程序125的任何具體方式或過程僅用于說明性目的,并不意味著限制或縮小本發(fā)明的范圍,除非明確地要求保護(hù)。
無論應(yīng)用程序125是如何初始化的,如上所述,在初始化之后,即訪問描述組件接口160的元數(shù)據(jù)。該元數(shù)據(jù)160是關(guān)于動(dòng)態(tài)web服務(wù)175要如何與傳統(tǒng)組件135通信的信息。換言之,元數(shù)據(jù)160特別地指示了以下的一個(gè)或多個(gè)傳統(tǒng)組件135需要什么調(diào)用115;要將什么參數(shù)115傳遞給傳統(tǒng)組件135;應(yīng)當(dāng)以什么順序傳入?yún)?shù)115;以及消息交換模式,它指示,例如是否要從傳統(tǒng)組件135接收返回值120。注意,所有的調(diào)用都包括參數(shù)。例如,F(xiàn)ormatAllAvailableDisks()(格式化所有可用的磁盤)操作和其它調(diào)用不需要任何參數(shù)。因此,元數(shù)據(jù)160可以有或沒有關(guān)于要傳遞到傳統(tǒng)組件135的參數(shù)115的細(xì)節(jié),這當(dāng)然取決于要作出的調(diào)用的類型。
在任何情況下,在訪問元數(shù)據(jù)160之后,web服務(wù)初始化器180即可生成web服務(wù)描述150或契約(例如,WSDL文檔)。另外,web服務(wù)初始化器180將在運(yùn)行時(shí)期間使用web服務(wù)描述150來啟動(dòng)動(dòng)態(tài)web服務(wù)175。另外,可能有必要使用web服務(wù)描述150來創(chuàng)建與其相一致的web服務(wù)客戶機(jī)145。注意,盡管所生成的web服務(wù)描述150用于創(chuàng)建動(dòng)態(tài)web服務(wù)175,這一事件對(duì)于本發(fā)明并不是重要的。換言之,web服務(wù)初始化器180在訪問了元數(shù)據(jù)160之后,即可自動(dòng)生成動(dòng)態(tài)web服務(wù)175,而無需使用web服務(wù)描述150。因此,使用web服務(wù)描述150來生成動(dòng)態(tài)web服務(wù)175僅用于說明性的目的,并不意味著限制或縮小本發(fā)明的范圍,除非明確地要求保護(hù)。
一旦創(chuàng)建了動(dòng)態(tài)web服務(wù)175且傳統(tǒng)組件135是活動(dòng)的,則web服務(wù)客戶機(jī)145可作出對(duì)訪問由傳統(tǒng)組件135提供的服務(wù)的請(qǐng)求140。請(qǐng)求140可包括諸如用于請(qǐng)求由傳統(tǒng)組件135提供的服務(wù)的操作,和/或傳統(tǒng)組件135需要的參數(shù)115(如果有)之類的內(nèi)容。在接收到請(qǐng)求140之后,且基于該請(qǐng)求內(nèi)的操作,動(dòng)態(tài)web服務(wù)175檢查請(qǐng)求140的內(nèi)容并用適當(dāng)?shù)膮?shù)(如果有)向傳統(tǒng)組件135作出適當(dāng)?shù)恼{(diào)用115。換言之,動(dòng)態(tài)web服務(wù)175擔(dān)當(dāng)公共web服務(wù)請(qǐng)求消息140(例如,XML文檔)和用于與傳統(tǒng)組件135通信的適當(dāng)調(diào)用和所需參數(shù)115(如果有)之間的轉(zhuǎn)換器。
如上所述,除適當(dāng)?shù)恼{(diào)用和所需的參數(shù)115(如果有)之外,動(dòng)態(tài)web服務(wù)175應(yīng)當(dāng)被配置成知道用于傳統(tǒng)組件135的適當(dāng)消息交換模式。因此,如果需要返回值120,則動(dòng)態(tài)web服務(wù)175期望這一返回。該返回值120然后可在適當(dāng)?shù)膚eb服務(wù)響應(yīng)130中被格式化,該響應(yīng)是由動(dòng)態(tài)web服務(wù)175生成的。注意,盡管用于該示例的消息交換模式是請(qǐng)求—響應(yīng),但是其它消息交換模式也可用于本發(fā)明。因此,如此處所描述的對(duì)任何特定類型的消息交換模式的使用僅用于說明性目的,并不意味著限制或縮小本發(fā)明的范圍,除非明確地要求保護(hù)。
其它示例實(shí)施例為應(yīng)用程序125提供了終止序列。當(dāng)傳統(tǒng)應(yīng)用程序125被關(guān)閉或停止時(shí),示例性實(shí)施例能夠終止動(dòng)態(tài)web服務(wù)175,并例如通過將其發(fā)送到回收站170來刪除web服務(wù)描述150。因此,由于web服務(wù)描述150不被持久保存和/或重用,如果修改了傳統(tǒng)組件175或提供了更新的版本,則不會(huì)有任何不一致性。
注意,本發(fā)明也支持傳統(tǒng)客戶機(jī)105。因此,傳統(tǒng)客戶機(jī)105可用適當(dāng)?shù)膮?shù)115(如果有)直接向傳統(tǒng)應(yīng)用程序125作出適當(dāng)?shù)恼{(diào)用。返回值120(如果有)也可從傳統(tǒng)應(yīng)用程序125直接傳遞到傳統(tǒng)客戶機(jī)105。
本發(fā)明也可按照包括功能步驟和/或非功能動(dòng)作的方法來描述。以下是可在實(shí)施本發(fā)明時(shí)執(zhí)行的動(dòng)作和步驟的描述。通常,功能步驟按照所實(shí)現(xiàn)的結(jié)果來描述本發(fā)明,而非功能動(dòng)作描述了用于實(shí)現(xiàn)特定結(jié)果的更具體的行動(dòng)。盡管可以安特定的順序描述或要求保護(hù)功能步驟或非功能動(dòng)作,然而本發(fā)明不限于任何特定的順序或動(dòng)作和/或步驟的組合。此外,在權(quán)利要求書的敘述以及以下圖2的流程圖的描述中對(duì)步驟和/或動(dòng)作的使用用于指示對(duì)這些術(shù)語的期望的特定使用。
圖2示出了用于本發(fā)明的各示例性實(shí)施例的流程圖。以下圖2的描述將偶然會(huì)參考來自圖1的對(duì)應(yīng)的元素。盡管可參考來自該圖的特定元素,然而這些元素僅用于說明性目的,并非限制或縮小本發(fā)明的范圍,除非明確地要求保護(hù)。
圖2示出了為不被開發(fā)、設(shè)計(jì)或編碼成在web服務(wù)環(huán)境中通信的傳統(tǒng)應(yīng)用程序組件生成動(dòng)態(tài)web服務(wù)的方法200的流程圖。這些實(shí)施例允許管理事件在傳統(tǒng)應(yīng)用程序組件的初始化期間觸發(fā)動(dòng)態(tài)web服務(wù)的生成。方法200包括接收初始化應(yīng)用程序的請(qǐng)求的動(dòng)作205。例如,服務(wù)110可接收初始化應(yīng)用程序125的請(qǐng)求。應(yīng)用程序125將包括不被開發(fā)成與web服務(wù)應(yīng)用程序,如web服務(wù)客戶機(jī)145通信的傳統(tǒng)組件135。該初始化應(yīng)用程序的請(qǐng)求可響應(yīng)于來自web服務(wù)客戶機(jī)145的web服務(wù)請(qǐng)求消息140而接收,或者可以響應(yīng)于來自服務(wù)110的計(jì)算設(shè)備處的用戶界面的輸入而接收。
方法200還包括用于自動(dòng)生成動(dòng)態(tài)web服務(wù)的步驟225。步驟225包括標(biāo)識(shí)管理配置設(shè)置指示要為傳統(tǒng)組件生成動(dòng)態(tài)web服務(wù)的動(dòng)作210。例如,web服務(wù)初始化器180可訪問用于標(biāo)識(shí)要在初始化應(yīng)用程序125之后為傳統(tǒng)組件135生成動(dòng)態(tài)web服務(wù)175的管理配置設(shè)置155。
基于管理配置設(shè)置155,步驟225還包括訪問描述用于與傳統(tǒng)組件通信的接口的元數(shù)據(jù)的動(dòng)作215。例如,基于管理設(shè)置155,web服務(wù)初始化器180可訪問來自目錄數(shù)據(jù)庫165的描述組件接口160的元數(shù)據(jù)。元數(shù)據(jù)160應(yīng)當(dāng)描述諸如適當(dāng)?shù)恼{(diào)用115、參數(shù)115、以及動(dòng)態(tài)web服務(wù)125將用于與傳統(tǒng)組件135通信的參數(shù)115的排序等內(nèi)容。組件接口160的描述也可包括諸如用于傳統(tǒng)組件135的消息交換模式等信息。
最后,步驟225包括使用元數(shù)據(jù)來自動(dòng)創(chuàng)建動(dòng)態(tài)web服務(wù)的動(dòng)作220。換言之,web服務(wù)初始化器180可創(chuàng)建web服務(wù)描述150,它可用于創(chuàng)建動(dòng)態(tài)web服務(wù)175。在這一實(shí)施例中,web服務(wù)描述可以是WSDL文檔。
其它示例實(shí)施例能夠從web服務(wù)客戶機(jī)145接收web服務(wù)請(qǐng)求消息140。web服務(wù)請(qǐng)求消息140可包括用于請(qǐng)求由傳統(tǒng)組件135提供的服務(wù)的各種參數(shù)和操作。使用web服務(wù)請(qǐng)求消息140內(nèi)的信息,動(dòng)態(tài)web服務(wù)175可作出對(duì)傳統(tǒng)組件135的調(diào)用,并將適當(dāng)?shù)膮?shù)115(如果有)傳遞到傳統(tǒng)組件135以供進(jìn)一步的處理。
在其它一些實(shí)施例中,基于接口描述160,可為傳統(tǒng)組件135標(biāo)識(shí)消息交換模式,其中對(duì)web服務(wù)客戶機(jī)145需要響應(yīng)130。之后,動(dòng)態(tài)web服務(wù)175可從傳統(tǒng)組件135接收返回值120,其中動(dòng)態(tài)web服務(wù)175將返回值120格式化成web服務(wù)響應(yīng)消息130。因此,響應(yīng)消息130然后可被發(fā)送到web服務(wù)客戶機(jī)145以供進(jìn)一步的處理。注意,請(qǐng)求140和響應(yīng)130通常是XML文檔。
在又一些其它實(shí)施例中,接收停止應(yīng)用程序125的請(qǐng)求。基于停止應(yīng)用程序125的請(qǐng)求,動(dòng)態(tài)web服務(wù)175也被自動(dòng)停止。另外,刪除web服務(wù)描述150,使得在下一次初始化應(yīng)用程序125之后將生成新的動(dòng)態(tài)web服務(wù)175和新的web服務(wù)描述150。
本發(fā)明的范圍內(nèi)的實(shí)施例也包括用于攜帶或在其上儲(chǔ)存計(jì)算機(jī)指令或數(shù)據(jù)結(jié)構(gòu)的計(jì)算機(jī)可讀介質(zhì)。這類計(jì)算機(jī)可讀介質(zhì)可以是可由通用或?qū)S糜?jì)算機(jī)訪問的任一可用介質(zhì)。作為示例而非局限,這類計(jì)算機(jī)可讀介質(zhì)可包括RAM、ROM、EEPROM、CD-ROM或其它光盤存儲(chǔ)、磁盤存儲(chǔ)或其它磁存儲(chǔ)設(shè)備、或其它可用來以計(jì)算機(jī)可執(zhí)行指令或數(shù)據(jù)結(jié)構(gòu)的形式攜帶或儲(chǔ)存所期望的的程序代碼裝置并可由通用或?qū)S糜?jì)算機(jī)訪問的任一介質(zhì)。當(dāng)通過網(wǎng)絡(luò)或另一通信連接(或者硬布線、或者無線、或硬布線和無線的組合)向計(jì)算機(jī)傳輸或提供信息時(shí),計(jì)算機(jī)適當(dāng)?shù)貙⒃撨B接視為計(jì)算機(jī)可讀介質(zhì)。由此,任一這類連接適當(dāng)?shù)胤Q為計(jì)算機(jī)可讀介質(zhì)。上述的組合也應(yīng)當(dāng)包括在計(jì)算機(jī)可讀介質(zhì)的范圍內(nèi)。計(jì)算機(jī)可執(zhí)行指令包括,如,促使通用計(jì)算機(jī)、專用計(jì)算機(jī)或?qū)S锰幚碓O(shè)備執(zhí)行特定的一個(gè)或一組功能的指令和數(shù)據(jù)。
圖3及以下討論旨在提供對(duì)適于在其中實(shí)現(xiàn)本發(fā)明的計(jì)算環(huán)境的簡(jiǎn)要概括描述。盡管并非所需,但本發(fā)明將在諸如程序模塊等由網(wǎng)絡(luò)環(huán)境中的計(jì)算機(jī)執(zhí)行的計(jì)算機(jī)可執(zhí)行指令的一般上下文環(huán)境中描述。一般而言,程序模塊包括例程、程序、對(duì)象、組件、數(shù)據(jù)結(jié)構(gòu)等等,它們執(zhí)行特定的任務(wù)或?qū)崿F(xiàn)特定的抽象數(shù)據(jù)類型。計(jì)算機(jī)可執(zhí)行指令、相關(guān)聯(lián)的數(shù)據(jù)結(jié)構(gòu)以及程序模塊表示了用于執(zhí)行這里揭示的方法的步驟的程序代碼裝置的示例。這一可執(zhí)行指令或相關(guān)聯(lián)數(shù)據(jù)結(jié)構(gòu)的特定順序表示了用于實(shí)現(xiàn)在這類步驟中所描述的功能的相應(yīng)動(dòng)作的示例。
本領(lǐng)域的技術(shù)人員可以理解,本發(fā)明可以在具有多種類型計(jì)算機(jī)系統(tǒng)配置的網(wǎng)絡(luò)計(jì)算環(huán)境中實(shí)踐,包括個(gè)人計(jì)算機(jī)、手持式設(shè)備、多處理器系統(tǒng)、基于微處理器或可編程消費(fèi)者電子設(shè)備、網(wǎng)絡(luò)PC、小型機(jī)、大型機(jī)等等。本發(fā)明也可以在分布式計(jì)算環(huán)境中實(shí)踐,其中,任務(wù)由通過通信網(wǎng)絡(luò)連接(或者通過硬布線鏈路、或者通過無線鏈路、或通過硬布線或無線鏈路的組合)的本地和遠(yuǎn)程處理設(shè)備來執(zhí)行。在分布式計(jì)算環(huán)境中,程序模塊可以位于本地和遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備中。
參考圖3,用于實(shí)現(xiàn)本發(fā)明的示例性系統(tǒng)包括常規(guī)計(jì)算機(jī)320形式的通用計(jì)算設(shè)備,包括處理單元321、系統(tǒng)存儲(chǔ)器322以及將包括系統(tǒng)存儲(chǔ)器322的各類系統(tǒng)組件耦合至處理單元321的系統(tǒng)總線323。系統(tǒng)總線323可以是若干種總線結(jié)構(gòu)類型的任一種,包括存儲(chǔ)器總線或存儲(chǔ)器控制器、外圍總線以及使用各類總線體系結(jié)構(gòu)的局部總線。系統(tǒng)存儲(chǔ)器包括只讀存儲(chǔ)器(ROM)324和隨機(jī)存取存儲(chǔ)器(RAM)325?;据斎?輸出系統(tǒng)(BIOS)326包含如在啟動(dòng)時(shí)協(xié)助在計(jì)算機(jī)320內(nèi)的元件之間傳輸信息的基本例程,可儲(chǔ)存在ROM 324中。
計(jì)算機(jī)320也可包括用于對(duì)磁硬盤339進(jìn)行讀寫的磁硬盤驅(qū)動(dòng)器327、用于對(duì)可移動(dòng)磁盤329進(jìn)行讀寫的磁盤驅(qū)動(dòng)器328以及用于對(duì)可移動(dòng)光盤331,如CD-ROM或其它光介質(zhì)進(jìn)行讀寫的光盤驅(qū)動(dòng)器330。磁硬盤驅(qū)動(dòng)器327、磁盤驅(qū)動(dòng)器328以及光盤驅(qū)動(dòng)器330分別通過硬盤驅(qū)動(dòng)器接口332、磁盤驅(qū)動(dòng)器接口333和光盤驅(qū)動(dòng)器接口333連接至系統(tǒng)總線323。驅(qū)動(dòng)器及其相關(guān)聯(lián)的計(jì)算機(jī)可讀介質(zhì)為計(jì)算機(jī)320提供了計(jì)算機(jī)可執(zhí)行指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的非易失性存儲(chǔ)。盡管這里描述的示例環(huán)境采用了磁硬盤339、可移動(dòng)磁盤329以及可移動(dòng)光盤331,然而也可以使用用于儲(chǔ)存數(shù)據(jù)的其它類型的計(jì)算機(jī)可讀介質(zhì),包括盒式磁帶、閃存卡、數(shù)字多功能盤、Bernoulli盒式磁盤、RAM、ROM等等。
包括一個(gè)或多個(gè)程序模塊的程序代碼裝置可儲(chǔ)存在硬盤339、磁盤329、光盤331、ROM 324或RAM 325中,包括操作系統(tǒng)335、一個(gè)或多個(gè)應(yīng)用程序336、其它程序模塊337以及程序數(shù)據(jù)338。用戶可以通過鍵盤340、定點(diǎn)設(shè)備342或其它輸入設(shè)備(未示出),如麥克風(fēng)、操縱桿、游戲墊、圓盤式衛(wèi)星天線、掃描儀等等向計(jì)算機(jī)320輸入命令和信息。這些和其它輸入設(shè)備通常通過耦合至系統(tǒng)總線323的串行端口接口346連接到處理單元321??蛇x地,輸入設(shè)備也可以通過其它接口連接,如并行端口、游戲端口或通用串行總線(USB)。監(jiān)視器347或另一顯示設(shè)備也通過接口,如視頻適配器348連接到系統(tǒng)總線323。除監(jiān)視器之外,個(gè)人計(jì)算機(jī)通常包括其它外圍輸出設(shè)備(未示出),如揚(yáng)聲器和打印機(jī)。
計(jì)算機(jī)320可以使用到一個(gè)或多個(gè)遠(yuǎn)程計(jì)算機(jī),如遠(yuǎn)程計(jì)算機(jī)349a和349b的邏輯連接在網(wǎng)絡(luò)化環(huán)境中操作。遠(yuǎn)程計(jì)算機(jī)349a和349b的每一個(gè)可以是另一個(gè)人計(jì)算機(jī)、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對(duì)等設(shè)備或其它常見的網(wǎng)絡(luò)節(jié)點(diǎn),并通常包括許多或所有相對(duì)于計(jì)算機(jī)320所描述的元件,盡管在圖3中僅示出了存儲(chǔ)器存儲(chǔ)設(shè)備350a和350b及其關(guān)聯(lián)的應(yīng)用程序336a和336b。圖3描述的邏輯連接包括局域網(wǎng)(LAN)351和廣域網(wǎng)(WAN)352,這里示出作為示例而非局限。這類網(wǎng)絡(luò)環(huán)境常見于辦公室范圍或企業(yè)范圍計(jì)算機(jī)網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)以及因特網(wǎng)。
當(dāng)在LAN網(wǎng)絡(luò)環(huán)境中使用時(shí),計(jì)算機(jī)320通過網(wǎng)絡(luò)接口或適配器353連接至局域網(wǎng)351。當(dāng)在WAN網(wǎng)絡(luò)環(huán)境中使用時(shí),計(jì)算機(jī)320可包括調(diào)制解調(diào)器353或用于通過廣域網(wǎng)352,如因特網(wǎng)建立通信的其它裝置。調(diào)制解調(diào)器353可以是內(nèi)置或外置的,它通過串行端口接口336連接至系統(tǒng)總線323。在網(wǎng)絡(luò)化環(huán)境中,相對(duì)于計(jì)算機(jī)320所描述的程序模塊或其部分可儲(chǔ)存在遠(yuǎn)程存儲(chǔ)器存儲(chǔ)設(shè)備中。可以理解,示出的網(wǎng)絡(luò)連接是示例性的,也可以使用通過廣域網(wǎng)352建立通信的其它裝置。
本發(fā)明可以用其它特定形式來實(shí)施,而不脫離其精神或本質(zhì)特征。所描述的實(shí)施例被認(rèn)為在所有方面都僅是說明性而非限制性的。因此,本發(fā)明的范圍由所附權(quán)利要求書而非以上描述來指示。落入所附權(quán)利要求書的等效技術(shù)方案的意義和范圍之內(nèi)的所有改變都包含在其范圍之內(nèi)。
權(quán)利要求
1.一種在分布式計(jì)算系統(tǒng)中的服務(wù)計(jì)算設(shè)備處的方法,所述方法通過允許管理事件在傳統(tǒng)應(yīng)用程序組件的初始化期間導(dǎo)致動(dòng)態(tài)web服務(wù)的生成,為不被開發(fā)成在web服務(wù)環(huán)境內(nèi)通信的傳統(tǒng)應(yīng)用程序組件生成動(dòng)態(tài)web服務(wù),所述方法包括以下動(dòng)作接收初始化應(yīng)用程序的請(qǐng)求,所述應(yīng)用程序包括不被開發(fā)成與web服務(wù)應(yīng)用程序通信的一個(gè)或多個(gè)傳統(tǒng)組件;標(biāo)識(shí)指示要在初始化所述應(yīng)用程序之后為所述一個(gè)或多個(gè)傳統(tǒng)組件生成動(dòng)態(tài)web服務(wù)的管理配置設(shè)置;基于所述管理配置設(shè)置,訪問描述用于與所述一個(gè)或多個(gè)傳統(tǒng)組件通信的接口的元數(shù)據(jù);以及使用所述元數(shù)據(jù)來自動(dòng)生成與所述接口描述相一致的動(dòng)態(tài)web服務(wù),以允許web服務(wù)客戶機(jī)通過轉(zhuǎn)換過程與所述一個(gè)或多個(gè)傳統(tǒng)組件進(jìn)行通信。
2.如權(quán)利要求1所述的方法,還包括以下動(dòng)作從所述web服務(wù)客戶機(jī)接收web服務(wù)請(qǐng)求消息,所述web服務(wù)請(qǐng)求消息包括用于請(qǐng)求由所述一個(gè)或多個(gè)傳統(tǒng)組件提供的服務(wù)的一個(gè)或多個(gè)操作;以及基于所述一個(gè)或多個(gè)操作,使用所述動(dòng)態(tài)web服務(wù)來對(duì)所述一個(gè)或多個(gè)傳統(tǒng)組件作出一個(gè)或多個(gè)傳統(tǒng)調(diào)用。
3.如權(quán)利要求2所述的方法,其特征在于,所述web服務(wù)請(qǐng)求消息還包括一個(gè)或多個(gè)參數(shù),所述方法還包括以下動(dòng)作將所述一個(gè)或多個(gè)參數(shù)傳遞到所述一個(gè)或多個(gè)傳統(tǒng)組件的一個(gè)或多個(gè)以供進(jìn)一步的處理。
4.如權(quán)利要求2所述的方法,其特征在于,還包括以下動(dòng)作基于所述接口描述,標(biāo)識(shí)用于所述一個(gè)或多個(gè)傳統(tǒng)組件的消息交換模式需要對(duì)所述web服務(wù)客戶機(jī)的響應(yīng);從所述一個(gè)或多個(gè)傳統(tǒng)組件接收一個(gè)或多個(gè)返回值;使用所述動(dòng)態(tài)web服務(wù)以將所述一個(gè)或多個(gè)返回值格式化成web服務(wù)響應(yīng)消息;以及將所述web服務(wù)響應(yīng)消息發(fā)送到所述web服務(wù)客戶機(jī)以供進(jìn)一步的處理。
5.如權(quán)利要求4所述的方法,其特征在于,所述web服務(wù)請(qǐng)求和web服務(wù)響應(yīng)消息是XML文檔。
6.如權(quán)利要求1所述的方法,其特征在于,所述接口描述描述了調(diào)用操作、參數(shù)、參數(shù)排序、或用于與所述一個(gè)或多個(gè)傳統(tǒng)組件通信的消息交換模式中的一個(gè)或多個(gè)。
7.如權(quán)利要求1所述的方法,其特征在于,所述元數(shù)據(jù)用于首先生成web服務(wù)描述,所述web服務(wù)描述然后用于生成所述動(dòng)態(tài)web服務(wù)。
8.如權(quán)利要求7所述的方法,其特征在于,所述web服務(wù)描述是WSDL文檔。
9.如權(quán)利要求7所述的方法,其特征在于,還包括以下動(dòng)作接收停止所述應(yīng)用程序的請(qǐng)求;基于停止所述應(yīng)用程序的請(qǐng)求,自動(dòng)停止所述動(dòng)態(tài)web服務(wù);以及刪除所述web服務(wù)描述,使得在下一次初始化所述應(yīng)用程序時(shí)將生成新的動(dòng)態(tài)web服務(wù)和新的web服務(wù)描述。
10.如權(quán)利要求1所述的方法,其特征在于,所述初始化應(yīng)用程序的請(qǐng)求是響應(yīng)于來自所述web服務(wù)客戶機(jī)的web服務(wù)請(qǐng)求消息而接收的。
11.如權(quán)利要求1所述的方法,其特征在于,所述初始化應(yīng)用程序的請(qǐng)求是響應(yīng)于來自所述服務(wù)計(jì)算設(shè)備處的用戶界面的輸入而接收的。
12.一種在分布式系統(tǒng)中的服務(wù)計(jì)算設(shè)備處的方法,所述方法通過允許管理事件在傳統(tǒng)應(yīng)用程序組件的初始化期間導(dǎo)致動(dòng)態(tài)web服務(wù)的生成,為不被開發(fā)成在web服務(wù)環(huán)境中通信的傳統(tǒng)應(yīng)用程序組件生成動(dòng)態(tài)web服務(wù),所述方法包括接收初始化應(yīng)用程序的請(qǐng)求的動(dòng)作,所述應(yīng)用程序包括不被開發(fā)成與述web服務(wù)應(yīng)用程序通信的一個(gè)或多個(gè)傳統(tǒng)組件;基于所述請(qǐng)求,用于動(dòng)態(tài)地生成與描述用于與所述一個(gè)或多個(gè)傳統(tǒng)組件通信的接口的元數(shù)據(jù)相一致的動(dòng)態(tài)web服務(wù)的步驟,所述動(dòng)態(tài)web服務(wù)用于允許web服務(wù)客戶機(jī)通過轉(zhuǎn)換過程與所述一個(gè)或多個(gè)傳統(tǒng)組件通信。
13.如權(quán)利要求12所述的方法,其特征在于,所述元數(shù)據(jù)用于首先生成web服務(wù)描述,所述web服務(wù)描述然后用于生成所述動(dòng)態(tài)web服務(wù)。
14.如權(quán)利要求13所述的方法,其特征在于,還包括以下動(dòng)作接收停止所述應(yīng)用程序的請(qǐng)求;基于停止所述應(yīng)用程序的請(qǐng)求,自動(dòng)停止所述動(dòng)態(tài)web服務(wù);以及刪除所述web服務(wù)描述,使得當(dāng)下一次初始化所述應(yīng)用程序時(shí),將生成新的動(dòng)態(tài)web服務(wù)和新的web服務(wù)描述。
15.如權(quán)利要求12所述的方法,其特征在于,所述初始化應(yīng)用程序的請(qǐng)求是響應(yīng)于來自所述web服務(wù)客戶機(jī)的web服務(wù)請(qǐng)求消息而接收的。
16.一種在分布式系統(tǒng)中的服務(wù)計(jì)算設(shè)備處的計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品用于實(shí)現(xiàn)一種方法,所述方法通過允許管理事件在傳統(tǒng)應(yīng)用程序組件的初始化期間導(dǎo)致動(dòng)態(tài)web服務(wù)的生成,為不被開發(fā)成在web服務(wù)環(huán)境中通信的傳統(tǒng)應(yīng)用程序組件生成動(dòng)態(tài)web服務(wù),所述計(jì)算機(jī)程序產(chǎn)品包括其上儲(chǔ)存有計(jì)算機(jī)可執(zhí)行指令的一個(gè)或多個(gè)計(jì)算機(jī)可讀介質(zhì),當(dāng)由處理器執(zhí)行所述指令時(shí),可使所述分布式計(jì)算系統(tǒng)執(zhí)行以下動(dòng)作接收初始化應(yīng)用程序的請(qǐng)求,所述應(yīng)用程序包括不被開發(fā)成與web服務(wù)應(yīng)用程序通信的一個(gè)或多個(gè)傳統(tǒng)組件;標(biāo)識(shí)管理配置設(shè)置,所述管理配置設(shè)置指示要在初始化所述應(yīng)用程序之后為所述一個(gè)或多個(gè)傳統(tǒng)組件生成動(dòng)態(tài)web服務(wù);基于所述管理配置設(shè)置,訪問描述用于與所述一個(gè)或多個(gè)傳統(tǒng)組件通信的接口的元數(shù)據(jù);以及使用所述元數(shù)據(jù)自動(dòng)生成與所述接口描述相一致的動(dòng)態(tài)web服務(wù),以允許web客戶機(jī)通過轉(zhuǎn)換過程與所述一個(gè)或多個(gè)傳統(tǒng)組件通信。
17.如權(quán)利要求16所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,還包括可使得所述分布式系統(tǒng)執(zhí)行以下動(dòng)作的計(jì)算機(jī)可執(zhí)行指令從所述web服務(wù)客戶機(jī)接收web服務(wù)請(qǐng)求消息,所述web服務(wù)請(qǐng)求消息包括用于請(qǐng)求由所述一個(gè)或多個(gè)傳統(tǒng)組件提供的服務(wù)的一個(gè)或多個(gè)操作;以及基于所述一個(gè)或多個(gè)操作,使用所述動(dòng)態(tài)web服務(wù)來對(duì)所述一個(gè)或多個(gè)傳統(tǒng)組件作出一個(gè)或多個(gè)傳統(tǒng)調(diào)用。
18.如權(quán)利要求17所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述web服務(wù)請(qǐng)求消息還包括一個(gè)或多個(gè)參數(shù),所述計(jì)算機(jī)程序產(chǎn)品還包括可使所述分布式計(jì)算系統(tǒng)執(zhí)行以下動(dòng)作的計(jì)算機(jī)可執(zhí)行指令將所述一個(gè)或多個(gè)參數(shù)傳遞到所述一個(gè)或多個(gè)傳統(tǒng)組件的一個(gè)或多個(gè)以供進(jìn)一步的處理。
19.如權(quán)利要求17所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,還包括可使所述分布式計(jì)算系統(tǒng)執(zhí)行以下動(dòng)作的計(jì)算機(jī)可執(zhí)行指令基于所述接口描述,標(biāo)識(shí)用于所述一個(gè)或多個(gè)傳統(tǒng)組件的消息交換模式需要對(duì)所述web服務(wù)客戶機(jī)的響應(yīng);從所述一個(gè)或多個(gè)傳統(tǒng)組件接收一個(gè)或多個(gè)返回值;使用所述動(dòng)態(tài)web服務(wù)以將所述一個(gè)或多個(gè)返回值格式化成web服務(wù)響應(yīng)消息;以及將所述web服務(wù)響應(yīng)消息發(fā)送到所述web服務(wù)客戶機(jī)以供進(jìn)一步的處理。
20.如權(quán)利要求16所述的計(jì)算機(jī)程序產(chǎn)品,其特征在于,所述接口描述描述了調(diào)用操作、參數(shù)、或用于與所述一個(gè)或多個(gè)傳統(tǒng)組件通信的消息交換模式中的一個(gè)或多個(gè)。
全文摘要
本發(fā)明提供了一種允許管理事件在傳統(tǒng)應(yīng)用程序的初始化期間觸發(fā)或?qū)е聞?dòng)態(tài)web服務(wù)的生成的機(jī)制。類似于其它類型的靜態(tài)工具安裝方法,此處所支持的動(dòng)態(tài)方法使用描述用于與傳統(tǒng)組件通信的接口的可用元數(shù)據(jù)。然而,并非在一次性或偶然的基礎(chǔ)上通過工具安裝來生成和表現(xiàn)web服務(wù),而是在示例實(shí)施例中,由作為應(yīng)用程序初始化的一個(gè)標(biāo)準(zhǔn)部件的支持基礎(chǔ)結(jié)構(gòu)來生成web服務(wù)。在停止應(yīng)用程序之后,提供停止對(duì)應(yīng)的動(dòng)態(tài)web服務(wù)并刪除用于生成該動(dòng)態(tài)web服務(wù)的web服務(wù)描述的終止序列。因此,每次當(dāng)啟動(dòng)應(yīng)用程序時(shí),都需要參考可用元數(shù)據(jù)且可在進(jìn)行中構(gòu)建一致的服務(wù)。
文檔編號(hào)H04L29/06GK1832478SQ20061000851
公開日2006年9月13日 申請(qǐng)日期2006年2月10日 優(yōu)先權(quán)日2005年3月8日
發(fā)明者A·D·米爾利甘, D·F·鮑克斯, H·賽德, M·A·范戈?duì)柕? S·阿布拉漢姆 申請(qǐng)人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1