專利名稱:用于從現(xiàn)有萬維網(wǎng)站點創(chuàng)建萬維網(wǎng)服務(wù)的系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及萬維網(wǎng)(web)服務(wù)技術(shù),并尤其涉及從現(xiàn)有的萬維網(wǎng)應(yīng)用程序發(fā)布基于網(wǎng)頁的交易作為萬維網(wǎng)服務(wù)。
背景技術(shù):
每年,越來越多地買賣在因特網(wǎng)上辦理。在諸如因特網(wǎng)的網(wǎng)絡(luò)上實施的買賣過程或交易通常是利用實現(xiàn)交易的稱作萬維網(wǎng)應(yīng)用程序的軟件組件通過網(wǎng)頁實現(xiàn)的。一些具有擁有交易能力的因特網(wǎng)站點的企業(yè)提供商家到顧客(B2C)或商家到商家(B2B)的通信。
參考圖1描述B2C通信。傳統(tǒng)地,如圖1中虛線箭頭所示,用戶16利用萬維網(wǎng)應(yīng)用程序18的萬維網(wǎng)應(yīng)用程序接口32在因特網(wǎng)12上實施交易。用戶通常通過萬維網(wǎng)應(yīng)用程序的網(wǎng)頁經(jīng)由因特網(wǎng)12和萬維網(wǎng)應(yīng)用程序接口32而訪問萬維網(wǎng)應(yīng)用程序18的交易22-24。網(wǎng)頁通常以用于個人計算機上的瀏覽器的超文本標記語言(HTML)、用于移動電話上的瀏覽器的無線標記語言(WML)等寫成。萬維網(wǎng)應(yīng)用程序18通過提供用戶導(dǎo)航的網(wǎng)頁而將接口呈現(xiàn)給用戶,以執(zhí)行交易22,24。
同樣參考圖1描述B2B通信。對于B2B通信,服務(wù)器側(cè)的萬維網(wǎng)應(yīng)用程序必須為客戶端應(yīng)用程序提供編程接口。為此目的,開發(fā)了萬維網(wǎng)服務(wù)。
萬維網(wǎng)服務(wù)是本行業(yè)技術(shù)人員熟知的軟件組件。萬維網(wǎng)服務(wù)的長處在于提供了在不具有每個應(yīng)用程序的特定實現(xiàn)的先驗知識的條件下集成各種不同種類的應(yīng)用程序的標準化方法。通過使用標準化描述語言諸如萬維網(wǎng)服務(wù)描述語言(WSDL)、簡單對象訪問協(xié)議(SOAP)、和通用描述發(fā)現(xiàn)集成(universaldescription,discovery,and integration,UDDI),萬維網(wǎng)服務(wù)允許以不同源語言實現(xiàn)的不同應(yīng)用程序之間通信。WSDL文件是以可擴展標記語言(XML)書寫的描述語言文件,其描述了可以由用戶應(yīng)用程序(也稱作萬維網(wǎng)服務(wù)客戶端)調(diào)用的萬維網(wǎng)服務(wù)提供的函數(shù)及其相關(guān)聯(lián)的輸入/輸出參數(shù)。用戶應(yīng)用程序在訪問萬維網(wǎng)服務(wù)之前讀取WSDL文件并且據(jù)此調(diào)整其調(diào)用。WSDL可以存儲在與托管(host)萬維網(wǎng)服務(wù)的服務(wù)器相同的服務(wù)器上或者存儲在不同的服務(wù)器或目錄中。萬維網(wǎng)服務(wù)允許對分布在因特網(wǎng)上的交易進行程序訪問(programmatic access)以提供數(shù)據(jù)或功能給另一應(yīng)用程序。
但是,創(chuàng)建、部署、和發(fā)布萬維網(wǎng)服務(wù)以實施萬維網(wǎng)應(yīng)用程序交易很復(fù)雜并且需要高級編程技術(shù)。所需的編程量是時間密集的并且所涉及的代價相當(dāng)大,例如通常需要復(fù)雜組件諸如應(yīng)用程序服務(wù)器。通常,企業(yè)不能夠承擔(dān)與萬維網(wǎng)服務(wù)技術(shù)相關(guān)聯(lián)的花銷。
在圖1的計算機網(wǎng)絡(luò)系統(tǒng)10中示出了構(gòu)建及部署萬維網(wǎng)服務(wù)14的當(dāng)前方案。這樣的萬維網(wǎng)服務(wù)通常由服務(wù)提供商或者萬維網(wǎng)應(yīng)用程序18的擁有者編程得到,并且在托管萬維網(wǎng)應(yīng)用程序的相同萬維網(wǎng)服務(wù)器26上實現(xiàn)。萬維網(wǎng)服務(wù)14由兩個邏輯塊構(gòu)成,一個用作與用戶應(yīng)用程序20的接口,即萬維網(wǎng)服務(wù)接口28,一個用作與萬維網(wǎng)應(yīng)用程序18的接口,即萬維網(wǎng)服務(wù)實現(xiàn)30。有關(guān)萬維網(wǎng)服務(wù)器和萬維網(wǎng)應(yīng)用程序語言代碼的知識允許擁有者對萬維網(wǎng)服務(wù)接口28和萬維網(wǎng)服務(wù)實現(xiàn)30進行編程和部署,該萬維網(wǎng)服務(wù)實現(xiàn)30直接與萬維網(wǎng)應(yīng)用程序的代碼交互以實施交易22-24。萬維網(wǎng)服務(wù)接口28通過諸如因特網(wǎng)12的網(wǎng)絡(luò)與用戶應(yīng)用程序20交互,以執(zhí)行來自用戶應(yīng)用程序的調(diào)用以及實施萬維網(wǎng)應(yīng)用程序18的交易22-24。萬維網(wǎng)服務(wù)經(jīng)由萬維網(wǎng)服務(wù)實現(xiàn)30直接與交易交互。盡管實現(xiàn)萬維網(wǎng)服務(wù)需要高級編程技術(shù),但是其是本領(lǐng)域公知的實現(xiàn)萬維網(wǎng)服務(wù)的公共技術(shù)。通過圖1中的實線箭頭示出了用戶應(yīng)用程序、萬維網(wǎng)應(yīng)用程序交易、和萬維網(wǎng)服務(wù)之間的相互關(guān)系。
先前方案的主要問題在于,高級編程技術(shù)是必要的,并且為實現(xiàn)及部署萬維網(wǎng)服務(wù)需要萬維網(wǎng)應(yīng)用程序的交易接口的知識。需要一種減輕與先前方案相關(guān)聯(lián)的問題的生成萬維網(wǎng)服務(wù)的系統(tǒng)和方法。
發(fā)明內(nèi)容
本發(fā)明的目的是提供一種在無需具有有關(guān)萬維網(wǎng)應(yīng)用程序交易編程接口的知識的情況下開發(fā)萬維網(wǎng)服務(wù)的系統(tǒng)和方法。
根據(jù)本發(fā)明,提供了一種用于生成在萬維網(wǎng)應(yīng)用程序與用戶應(yīng)用程序之間提供編程接口的萬維網(wǎng)服務(wù)的方法,該方法包括下述步驟創(chuàng)建萬維網(wǎng)應(yīng)用程序的至少一個交易的導(dǎo)航流的腳本,該導(dǎo)航流代表在所述至少一個交易期間、用戶與萬維網(wǎng)應(yīng)用程序的萬維網(wǎng)應(yīng)用程序接口之間的交互;創(chuàng)建下述文本文件,該文本文件描述用于執(zhí)行該導(dǎo)航流所代表的至少一個交易的要由用戶應(yīng)用程序調(diào)用的函數(shù)及輸入或輸出參數(shù);創(chuàng)建與文本文件中描述的函數(shù)的調(diào)用對應(yīng)的萬維網(wǎng)服務(wù)接口代碼;以及創(chuàng)建萬維網(wǎng)服務(wù)實現(xiàn)代碼,用于執(zhí)行與導(dǎo)航流所代表的至少一個交易對應(yīng)的交互。
一個實施例通過記錄實施萬維網(wǎng)應(yīng)用程序中的交易的人類用戶的導(dǎo)航流而創(chuàng)建導(dǎo)航腳本。萬維網(wǎng)服務(wù)實現(xiàn)代碼的導(dǎo)航流的腳本可以由回歸(regression)測試工具生成。導(dǎo)航流的腳本可以以腳本語言書寫。以導(dǎo)航流腳本作為輸入而創(chuàng)建文本文件。該文本文件可以是WSDL文件。
本發(fā)明的另一方面提供了一種用于生成在萬維網(wǎng)應(yīng)用程序與用戶應(yīng)用程序之間提供編程接口的萬維網(wǎng)服務(wù)的系統(tǒng),所述系統(tǒng)包括用于創(chuàng)建萬維網(wǎng)應(yīng)用程序的至少一個交易的導(dǎo)航流的腳本的裝置,該導(dǎo)航流代表在所述至少一個交易期間、用戶與萬維網(wǎng)應(yīng)用程序的萬維網(wǎng)應(yīng)用程序接口之間的交互;用于創(chuàng)建下述文本文件的裝置,該文本文件描述用于執(zhí)行該導(dǎo)航流所代表的至少一個交易的要由用戶應(yīng)用程序調(diào)用的函數(shù)及輸入或輸出參數(shù);用于創(chuàng)建與文本文件中描述的函數(shù)的調(diào)用對應(yīng)的萬維網(wǎng)服務(wù)接口代碼的裝置;以及用于創(chuàng)建萬維網(wǎng)服務(wù)實現(xiàn)代碼的裝置,用于執(zhí)行與導(dǎo)航流所代表的至少一個交易對應(yīng)的交互。
在一個實施例中,該文本文件可以通過處理記錄實施萬維網(wǎng)應(yīng)用程序中的交易的人類用戶的導(dǎo)航流的腳本而生成。系統(tǒng)萬維網(wǎng)服務(wù)實現(xiàn)代碼的導(dǎo)航流的腳本可以由回歸測試工具生成。導(dǎo)航流可以以腳本語言書寫,以及該文本文件可以是WSDL文件。萬維網(wǎng)服務(wù)可以在托管萬維網(wǎng)應(yīng)用程序的萬維網(wǎng)服務(wù)器中實現(xiàn)的。在另一實施例中,萬維網(wǎng)應(yīng)用程序可以被托管在萬維網(wǎng)服務(wù)器上,而萬維網(wǎng)服務(wù)可以由另一個服務(wù)器托管。
通過本發(fā)明實施例的解決方案,可以構(gòu)建萬維網(wǎng)服務(wù)而無需通常屬于萬維網(wǎng)應(yīng)用程序擁有者的交易編程接口的知識。從而,可以根據(jù)本發(fā)明的實施例由客戶端應(yīng)用程序擁有者或因特網(wǎng)服務(wù)提供商來開發(fā)萬維網(wǎng)服務(wù)。
本發(fā)明實施例的方法的另一優(yōu)點在于,可以利用現(xiàn)有的測試工具和/或通過書寫從導(dǎo)航流創(chuàng)建WSDL文件的程序、和/或通過書寫將WSDL翻譯成萬維網(wǎng)服務(wù)接口代碼的程序、和/或通過書寫從導(dǎo)航流創(chuàng)建萬維網(wǎng)服務(wù)實現(xiàn)代碼的程序來自動執(zhí)行這些步驟。所有這些程序都可以由本領(lǐng)域普通技術(shù)人員編寫而沒有大的開發(fā)難度。
最后,利用本發(fā)明實施例的解決方案,可以利用該方法擴充向用戶提供B2C通信的萬維網(wǎng)應(yīng)用程序,以開發(fā)向用戶應(yīng)用程序提供B2B通信的萬維網(wǎng)服務(wù)。
通過參考附圖,現(xiàn)在將僅僅舉例描述并入本發(fā)明的從萬維網(wǎng)站點生成基于網(wǎng)頁的處理或交易作為萬維網(wǎng)服務(wù)的系統(tǒng)和方法,在附圖中
圖1示出了根據(jù)現(xiàn)有技術(shù)的具有萬維網(wǎng)服務(wù)實現(xiàn)的計算機網(wǎng)絡(luò)系統(tǒng);
圖2示出了實現(xiàn)本發(fā)明實施例的計算機網(wǎng)絡(luò)系統(tǒng);以及
圖3示出了根據(jù)本發(fā)明實施例的方法。
具體實施例方式
本發(fā)明的一個實施例可以以圖2中所示的計算機網(wǎng)絡(luò)40實現(xiàn)。在諸如因特網(wǎng)12的網(wǎng)絡(luò)中的萬維網(wǎng)服務(wù)器26或外部萬維網(wǎng)站點提供商上實現(xiàn)萬維網(wǎng)應(yīng)用程序。利用本領(lǐng)域公知的許多平臺之一而在萬維網(wǎng)服務(wù)器26上實現(xiàn)萬維網(wǎng)應(yīng)用程序。萬維網(wǎng)服務(wù)器可以被配置為托管一個或多個萬維網(wǎng)應(yīng)用程序18。萬維網(wǎng)應(yīng)用程序可以用至少一個交易1-N22-24配置。當(dāng)然,應(yīng)該理解,交易22-24可以包括在最廣泛的意義上定義的交易,諸如處理、信息檢索、執(zhí)行函數(shù)等等,而不應(yīng)認為僅限于商務(wù)交易。用戶應(yīng)用程序20可以通過萬維網(wǎng)服務(wù)42發(fā)送對實施萬維網(wǎng)應(yīng)用程序的交易的調(diào)用。萬維網(wǎng)服務(wù)可以基于現(xiàn)有的萬維網(wǎng)應(yīng)用程序創(chuàng)建,而無需對現(xiàn)有應(yīng)用程序接口做任何改變。萬維網(wǎng)服務(wù)42可以在萬維網(wǎng)應(yīng)用程序18的萬維網(wǎng)服務(wù)器26上或者在與萬維網(wǎng)服務(wù)器26分離或外部的另一服務(wù)器上實現(xiàn)。優(yōu)選實施例的萬維網(wǎng)服務(wù)42的萬維網(wǎng)服務(wù)實現(xiàn)46通過萬維網(wǎng)應(yīng)用程序的用戶16可用的相同的萬維網(wǎng)應(yīng)用程序接口32與萬維網(wǎng)應(yīng)用程序18交互。
在圖2中,在本發(fā)明實施例的萬維網(wǎng)服務(wù)中,萬維網(wǎng)服務(wù)42利用萬維網(wǎng)應(yīng)用程序18的萬維網(wǎng)應(yīng)用程序接口32經(jīng)由因特網(wǎng)12與萬維網(wǎng)應(yīng)用程序18通過接口連接(interface)并交互。用戶應(yīng)用程序20經(jīng)由萬維網(wǎng)服務(wù)接口44調(diào)用萬維網(wǎng)服務(wù)器的萬維網(wǎng)應(yīng)用程序18中的交易22-24。在向萬維網(wǎng)服務(wù)接口44發(fā)送調(diào)用之前,最初由用戶應(yīng)用程序20從萬維網(wǎng)服務(wù)42的萬維網(wǎng)服務(wù)接口44讀取WSDL文件48。萬維網(wǎng)服務(wù)接口44接收來自用戶應(yīng)用程序20的調(diào)用,并且通過網(wǎng)絡(luò)12經(jīng)由萬維網(wǎng)服務(wù)實現(xiàn)46將該調(diào)用傳遞到萬維網(wǎng)應(yīng)用程序18的萬維網(wǎng)應(yīng)用程序接口32以運行交易22-24。萬維網(wǎng)服務(wù)實現(xiàn)調(diào)用萬維網(wǎng)應(yīng)用程序接口并且模擬由運行萬維網(wǎng)應(yīng)用程序交易的用戶進行的網(wǎng)頁交互。
在本發(fā)明的實施例中,用戶應(yīng)用程序20擔(dān)任萬維網(wǎng)服務(wù)客戶端來遠程執(zhí)行諸如交易22-25的功能。應(yīng)該理解,客戶端或用戶應(yīng)用程序20可以經(jīng)由因特網(wǎng)通過接口連接或調(diào)用一個或多個萬維網(wǎng)服務(wù)42,但是為說明的目的僅示出了一個萬維網(wǎng)服務(wù)42。如后面參考圖3進一步詳細討論的,可以從現(xiàn)有萬維網(wǎng)應(yīng)用程序中手動或自動地生成萬維網(wǎng)服務(wù)42或部分萬維網(wǎng)服務(wù),以便允許來自客戶端應(yīng)用程序的連接。在另一實施例中,萬維網(wǎng)服務(wù)42可以由同一萬維網(wǎng)服務(wù)器26托管(未示出),或者萬維網(wǎng)服務(wù)可以由外部服務(wù)提供商托管。
本發(fā)明的實施例被示出為圖3中的方法50。該方法用于從擁有交易的現(xiàn)有萬維網(wǎng)應(yīng)用程序生成萬維網(wǎng)服務(wù)。萬維網(wǎng)服務(wù)包括具有代表萬維網(wǎng)服務(wù)接口的模塊、和代表萬維網(wǎng)服務(wù)實現(xiàn)的模塊的代碼。首先定義或創(chuàng)建52導(dǎo)航流以代表運行交易時用戶激活的網(wǎng)頁交互??梢越?jīng)由圖形用戶界面生成腳本??梢允褂眯纬蓪?dǎo)航流的網(wǎng)頁交互的任何其它可能的表示??梢詫⒃撃_本存儲在開發(fā)者工作站中的存儲器(未示出)中。該腳本可以以任何格式定義,其捕捉并且詳細定義客戶端用戶在萬維網(wǎng)站點的網(wǎng)頁中為完成交易而實施的一系列手動步驟或交互。由用戶導(dǎo)航萬維網(wǎng)站點以載入單個頁面而生成的樣本腳本如下
/*1.初始-設(shè)置環(huán)境*/ lr_rendezvous(“rendezvous_1”);/*設(shè)置rendezvous點*/ void lr_whoami(int FAR *vuser,LPCSTR FAR *vuser_group,int FAR *scid); LPCSTR my_host=lr_get_host_name(); LPCSTR my_controller=lr_get_master_host_name(); lr_save_datetime(“Tomorrow is%B%d%Y”,DATE_NOW+ONE_DAY,“next”); lr_output_message(lr_eval_string(“”));/*2.動作*/ int lr_start_transaction(LPCSTR transaction_name);/*開始交易*/ /*注意LPCSTR原型被自動定義為char**/ /*命令行解析*/<!-- SIPO <DP n="5"> --><dp n="d5"/>lr_get_attrib_double lr_get_attrib_long lr_get_attrib_string(char *parm 1); void lr_peek_events();/*暫停*/ void lr_think_time(int time);/*從0到32.767*/ /*對每個Vuser發(fā)送數(shù)據(jù)點到t_rep.eve6事件文件*/ cpu_val=cpu_check(); lr_user_data_point(“cpu”,cpu_val); lr_user_data point(“data_point_1”,1); /*開始否定測試情況*/ lr_continue_on_error(1);/*當(dāng)出現(xiàn)錯誤時1=Continue*/ int lr_advance_param(LPCSTR param);/*下一個*/ /*檢查實際結(jié)果是否是所預(yù)期的*/ /*關(guān)于HTTP請求的信息*/ { int HttpRetCode,HttpRetSize,HttpRetTime; web_url(“dogbert”,“URL=http//dogbert”,“TargetFrame=_TOP”,LAST); HttpRetCode= web_get_int_property(HTTP_INFO_RETURN_CODE); if(HttpRetCode==200) lr_log_message(“The Vuser successtully accessed the page”); else lr_log_message(“The Vuser failed to access the page”); } HttpRetSize= web_get_int_property(HTTP_INFO_DOWNLOAD_S1ZE); HttpRetTime= web_get_int_property(HTTP_INFO_DOWNLOAD_TIME); /*校驗其它對象*/ int web_find(char *FindName,,,LAST);/*文本*/ int web image check(char* CheckName,,“alt=Alt”,“src=Src”,LAST); int web_java_check(char *Name,,“Classname=…”,,LAST);/*3.結(jié)束*/int lr_end_transaction(LPCSTR transaction name);/*結(jié)束交易*/
上述具有一個網(wǎng)頁交互的腳本是出于說明的目的提供的。實際的腳本將可能包含幾個交互。萬維網(wǎng)應(yīng)用程序的每個交易可以由這樣的腳本來表示。
腳本可以手動創(chuàng)建,或者在另一實施例中,腳本可以由萬維網(wǎng)站點測試工具生成,該萬維網(wǎng)站點測試工具是例如可從紐約、Armonk的國際商業(yè)機器公司得到的IBM RATIONAL SUITE TESTSTUDIO(IBM、RATIONAL SUITE、和TESTSTUDIO是國際商業(yè)機器公司在某些國家的商標)、或者可從加利福尼亞的Sunnyvale的Mercury Interactive公司得到的LOADRUNNER(LOADRUNNER是Mercury Interactive公司在某些國家的商標)。然后在優(yōu)選實施例中可以使用存儲為腳本文件的導(dǎo)航流而從現(xiàn)有的萬維網(wǎng)應(yīng)用程序中生成萬維網(wǎng)服務(wù)代碼。萬維網(wǎng)服務(wù)實現(xiàn)46和萬維網(wǎng)服務(wù)接口44被生成??梢匀鐖D3所示并行地或者以任何其它的順序生成萬維網(wǎng)服務(wù)接口44和萬維網(wǎng)服務(wù)實現(xiàn)46。
從導(dǎo)航流中生成56萬維網(wǎng)服務(wù)實現(xiàn)代碼。萬維網(wǎng)服務(wù)實現(xiàn)代碼模擬交易22-24的網(wǎng)頁交互。萬維網(wǎng)服務(wù)實現(xiàn)46與萬維網(wǎng)應(yīng)用程序接口32通過接口連接或者交互。
在另一實施例中,萬維網(wǎng)服務(wù)實現(xiàn)代碼可以由生成回歸測試的萬維網(wǎng)站點測試工具諸如IBM RATIONAL SUITE TESTSTUDIO自動生成。這些工具創(chuàng)建模擬網(wǎng)頁間交互的模塊的代碼。萬維網(wǎng)服務(wù)實現(xiàn)可以用Java代碼、.net等編寫。
為了生成用于與客戶端或用戶應(yīng)用程序20交互和通過接口連接的萬維網(wǎng)服務(wù)接口代碼,從導(dǎo)航流中創(chuàng)建62 WSDL文件。由腳本翻譯器將腳本翻譯44成描述萬維網(wǎng)服務(wù)的編程語言,諸如WSDL文件,用于描述每個交易的每個步驟的函數(shù)以及輸入和輸出參數(shù)。例如,在一個情景下,交易的函數(shù)可以是定購一本書,其中輸入和輸出參數(shù)可以包括書名、作者名字、國際標準圖書編號(ISBN)等等。翻譯的過程可以手動完成。本領(lǐng)域普通技術(shù)人員也可以開發(fā)將導(dǎo)航流的腳本翻譯成WSDL的程序。
一旦導(dǎo)航腳本被翻譯成諸如WSDL的語言以描述萬維網(wǎng)服務(wù)函數(shù)及其輸入/輸出參數(shù),則生成64萬維網(wǎng)服務(wù)接口代碼。萬維網(wǎng)服務(wù)接口代碼是從WSDL文件中生成的。該代碼可以是與系統(tǒng)環(huán)境兼容的任何代碼類型,例如Java、.net等等。如果開發(fā)了程序,則萬維網(wǎng)服務(wù)接口代碼生成的步驟也可以自動完成。本領(lǐng)域普通技術(shù)人員可以開發(fā)將WSDL翻譯成Java代碼等的程序。
萬維網(wǎng)服務(wù)實現(xiàn)主要由萬維網(wǎng)服務(wù)內(nèi)的模塊組成,例如,用于調(diào)用具有輸入和輸出參數(shù)的函數(shù)(該調(diào)用類似于所生成的腳本中注冊的調(diào)用)的模塊、以及用于在交易期間模擬網(wǎng)頁內(nèi)的交互的代碼模塊。
應(yīng)該理解,上述從現(xiàn)有的萬維網(wǎng)應(yīng)用程序生成萬維網(wǎng)服務(wù)的系統(tǒng)和方法提供了某些優(yōu)點,諸如從基于網(wǎng)頁的交易中生成萬維網(wǎng)服務(wù)。另一優(yōu)點在于,萬維網(wǎng)服務(wù)是基于在萬維網(wǎng)站點中的網(wǎng)頁上實施的交易生成的,并且無需應(yīng)用程序的明確的知識(express knowledge)。利用該配置,萬維網(wǎng)服務(wù)的生成和后續(xù)維護沒有先前可實現(xiàn)的復(fù)雜,并且基于網(wǎng)頁的交易可以從現(xiàn)有萬維網(wǎng)應(yīng)用程序中部署為萬維網(wǎng)服務(wù)。應(yīng)該理解,本發(fā)明的特定實施例是出于說明的目的討論的,并且在不背離所附權(quán)利要求定義的范圍的條件下可以進行各種修改。
權(quán)利要求
1.一種用于生成在萬維網(wǎng)應(yīng)用程序與用戶應(yīng)用程序之間提供編程接口的萬維網(wǎng)服務(wù)(42)的方法(50),所述方法包括下述步驟
創(chuàng)建(52)萬維網(wǎng)應(yīng)用程序(18)的至少一個交易的導(dǎo)航流的腳本,該導(dǎo)航流代表在所述至少一個交易(22,24)期間用戶(16)與萬維網(wǎng)應(yīng)用程序的萬維網(wǎng)應(yīng)用程序接口(32)之間的交互;
創(chuàng)建(62)下述文本文件,該文本文件描述用于執(zhí)行該導(dǎo)航流所代表的至少一個交易的要由用戶應(yīng)用程序(20)調(diào)用的函數(shù)及輸入或輸出參數(shù);
創(chuàng)建與文本文件(48)中描述的函數(shù)的調(diào)用對應(yīng)的萬維網(wǎng)服務(wù)接口代碼(64);以及
創(chuàng)建萬維網(wǎng)服務(wù)實現(xiàn)代碼(56),用于執(zhí)行與導(dǎo)航流所代表的至少一個交易對應(yīng)的交互。
2.如權(quán)利要求1所述的方法,其中,所述創(chuàng)建文本文件(62)是通過記錄實施萬維網(wǎng)應(yīng)用程序(18)中的交易(22,24)的人類用戶的導(dǎo)航流而生成的。
3.如權(quán)利要求1或2所述的方法,其中,所述從導(dǎo)航流創(chuàng)建萬維網(wǎng)服務(wù)實現(xiàn)代碼(56)是由回歸測試工具生成的。
4.如權(quán)利要求1到3中任一個所述的方法,其中,所述導(dǎo)航流是以腳本語言編寫的。
5.如權(quán)利要求1到4中任一個所述的方法,其中,所述文本文件是WSDL文件(48)。
6.一種用于生成在萬維網(wǎng)應(yīng)用程序(18)與用戶應(yīng)用程序(20)之間提供編程接口的萬維網(wǎng)服務(wù)(42)的系統(tǒng)(40),所述系統(tǒng)包括
用于創(chuàng)建萬維網(wǎng)應(yīng)用程序(18)的至少一個交易的導(dǎo)航流的腳本的裝置,該導(dǎo)航流代表在所述至少一個交易(22,24)期間用戶(16)與萬維網(wǎng)應(yīng)用程序的萬維網(wǎng)應(yīng)用程序接口(32)之間的交互;
用于創(chuàng)建下述文本文件(48)的裝置,該文本文件描述用于執(zhí)行該導(dǎo)航流所代表的至少一個交易的要由用戶應(yīng)用程序調(diào)用的函數(shù)及輸入或輸出參數(shù);
用于創(chuàng)建與文本文件(48)中描述的函數(shù)的調(diào)用對應(yīng)的萬維網(wǎng)服務(wù)接口代碼(64)的裝置;以及
用于創(chuàng)建萬維網(wǎng)服務(wù)實現(xiàn)代碼的裝置,用于執(zhí)行與導(dǎo)航流所代表的至少一個交易對應(yīng)的交互。
7.如權(quán)利要求6所述的系統(tǒng),其中,所述文本文件(48)是通過記錄實施萬維網(wǎng)應(yīng)用程序(18)中的交易(22,24)的人類用戶的導(dǎo)航流而生成的。
8.如權(quán)利要求6或7所述的系統(tǒng),其中,所述服務(wù)實現(xiàn)代碼的導(dǎo)航流是由回歸測試工具生成的。
9.如權(quán)利要求6到8中任一個所述的系統(tǒng),其中,所述導(dǎo)航流是以腳本語言編寫的。
10.如權(quán)利要求6到9中任一個所述的系統(tǒng),其中,所述文本文件是WSDL文件(48)。
11.如權(quán)利要求6到10中任一個所述的系統(tǒng),其中,所述萬維網(wǎng)服務(wù)(42)是在托管萬維網(wǎng)應(yīng)用程序(18)的萬維網(wǎng)服務(wù)器(26)中實現(xiàn)的。
12.如權(quán)利要求6到10中任一個所述的系統(tǒng),其中,所述萬維網(wǎng)應(yīng)用程序(18)被托管在萬維網(wǎng)服務(wù)器(26)上,而所述萬維網(wǎng)服務(wù)(42)由另一個服務(wù)器托管。
全文摘要
一種用于從具有基于網(wǎng)頁的商業(yè)處理或交易的現(xiàn)有萬維網(wǎng)站點(18)中生成萬維網(wǎng)服務(wù)(42)的系統(tǒng)(40)和方法(50)。生成代表執(zhí)行交易所涉及的用戶導(dǎo)航序列的腳本。腳本元素包括萬維網(wǎng)應(yīng)用程序調(diào)用、輸入/輸出參數(shù)、以及交易的各元素之間的相互關(guān)系。從導(dǎo)航腳本生成WSDL文件、萬維網(wǎng)服務(wù)接口代碼、和萬維網(wǎng)服務(wù)實現(xiàn)代碼,并且可以將它們發(fā)布到本地的萬維網(wǎng)站點或者遠程站點上。
文檔編號G06Q30/00GK1794296SQ20051012480
公開日2006年6月28日 申請日期2005年11月15日 優(yōu)先權(quán)日2004年12月23日
發(fā)明者萊昂內(nèi)爾·莫米賈, 戴維·洛皮亞 申請人:國際商業(yè)機器公司