欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

訪問web服務(wù)的制作方法

文檔序號:6475129閱讀:219來源:國知局
專利名稱:訪問web服務(wù)的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及web服務(wù),更特別地,涉及經(jīng)由web服務(wù)網(wǎng)關(guān)訪問web服務(wù)。
背景技術(shù)
近幾年來,商業(yè)在因特網(wǎng)上提供網(wǎng)站已經(jīng)很普通,例如,該網(wǎng)站使得web客戶透過萬維網(wǎng)購買該商業(yè)的商品。自上述成功以來,在因特網(wǎng)上處理更復(fù)雜的電子商務(wù)應(yīng)用近來已經(jīng)成為一個必要條件,例如,支持商業(yè)對商業(yè)通信已經(jīng)成為一個必要條件,并且web服務(wù)的到來已經(jīng)滿足該必要條件。Web服務(wù)是模塊化的增強(qiáng)的電子商務(wù)應(yīng)用程序,該應(yīng)用程序支持跨越因特網(wǎng)的應(yīng)用程序之間的程序性交互作用。
例如,web服務(wù)可以基于共享、開放和新興的技術(shù)標(biāo)準(zhǔn)和協(xié)議,如SOAP(簡單對象訪問協(xié)議)、UDDI(通用描述,發(fā)現(xiàn)和集成)以及WSDL(Web服務(wù)定義語言)。在該環(huán)境中,web服務(wù)可以與異構(gòu)應(yīng)用程序通信、交互作用和集成,而不管它們的實(shí)現(xiàn)格式,從而使得web服務(wù)能夠通過因特網(wǎng)互相交互作用,以方便商業(yè)、供應(yīng)商、合作伙伴以及客戶之間的動態(tài)集成。
例如,提供電子商務(wù)應(yīng)用程序的web服務(wù)在著名的UDDI目錄中公布其URL。之后,客戶機(jī)可以從UDDI目錄中獲得URL,通過使用該URL聯(lián)系電子商務(wù)以便獲得WSDL文檔。WSDL描述服務(wù)電子商務(wù)應(yīng)用程序為客戶機(jī)提供的接口,支持例如SOAP over HTTP(超文本傳輸協(xié)議)之類的通信協(xié)議的一種或多種傳輸機(jī)制,以及用于各個傳輸機(jī)制的端點(diǎn)地址。一旦web客戶機(jī)擁有該WSDL,它就可以通過使用指定傳輸機(jī)制的通信協(xié)議經(jīng)由指定端點(diǎn)調(diào)用該接口。另外,如果該客戶機(jī)擁有服務(wù)電子商務(wù)應(yīng)用程序希望與其通信的電子商務(wù)應(yīng)用程序,則該客戶機(jī)和服務(wù)可以交換WSDL文檔以使它成為可能。此外,當(dāng)客戶機(jī)和web服務(wù)使用不同通信協(xié)議時,為了使它們能夠通信,使用web服務(wù)網(wǎng)關(guān)將客戶請求從一個通信協(xié)議轉(zhuǎn)換為另一個通信協(xié)議。
然而,雖然許多web客戶機(jī)和服務(wù)使用WSDL文檔和UDDI注冊表,但是許多其它web服務(wù)使用其它的商業(yè)對商業(yè)(b2b)協(xié)議,如RosettaNet、cXML和因特網(wǎng)工程任務(wù)組(AS1和AS2)規(guī)定的協(xié)議。這些協(xié)議使得使用相同b2b協(xié)議的商業(yè)伙伴能夠通信。然而,對于基于WSDL文檔與web服務(wù)通信的支持WSDL的web客戶機(jī)而言,當(dāng)前不可能與使用其它的基于非WSDL的商業(yè)對商業(yè)協(xié)議的商業(yè)伙伴進(jìn)行電子商務(wù)。

發(fā)明內(nèi)容
因此,根據(jù)本發(fā)明的第一方面,提供一種用于web服務(wù)網(wǎng)關(guān)的方法,以使web客戶機(jī)能夠訪問web服務(wù),該方法包括以下步驟接收來自web服務(wù)的配置文件,該配置文件包含如何與該web服務(wù)通信的細(xì)節(jié)并且其格式是該web客戶機(jī)不可識別的;基于該配置文件創(chuàng)建文檔,該文檔的格式是該web客戶機(jī)可識別的并且包含如何經(jīng)由該網(wǎng)關(guān)與該web服務(wù)通信的細(xì)節(jié);以及向第三方提供與該web服務(wù)和該web客戶機(jī)可以從中獲取該文檔的位置有關(guān)的信息;從而使得該web客戶機(jī)能夠使用該文檔來經(jīng)由該web服務(wù)網(wǎng)關(guān)訪問該web服務(wù)。
根據(jù)本發(fā)明的第二方面,提供使web客戶機(jī)能夠訪問web服務(wù)的web服務(wù)網(wǎng)關(guān),該網(wǎng)關(guān)包括用于接收來自web服務(wù)的配置文件的裝置,該配置文件包含如何與該web服務(wù)通信的細(xì)節(jié)并且其格式是該web客戶機(jī)不可識別的;用于基于該配置文件創(chuàng)建文檔的裝置,該文檔的格式是該web客戶機(jī)可識別的并且包含經(jīng)由該網(wǎng)關(guān)如何與該web服務(wù)通信的細(xì)節(jié);以及向第三方提供與該web服務(wù)和該web客戶機(jī)可以從中獲取該文檔的位置有關(guān)的信息的裝置;從而使得該web客戶機(jī)能夠使用該文檔來經(jīng)由該web服務(wù)網(wǎng)關(guān)訪問該web服務(wù)。
根據(jù)本發(fā)明的第三方面,提供包含以下指令的計算機(jī)程序產(chǎn)品,其中當(dāng)在數(shù)據(jù)處理主機(jī)上執(zhí)行該指令時,使該數(shù)據(jù)處理主機(jī)執(zhí)行根據(jù)所述的第一方面的方法。
例如,第三方可以是UDDI目錄,雖然實(shí)際上,它可以是向web客戶機(jī)提供有關(guān)web服務(wù)的信息的任何實(shí)體。
可選擇地,該文檔是在收到來自web服務(wù)的配置文件時基于該配置文件創(chuàng)建的。作為選擇,只有在web客戶機(jī)請求后才創(chuàng)建該文檔。
可選擇地,可以獲得向第三方提供的文檔的位置在與生成該文檔的web服務(wù)網(wǎng)關(guān)不同但有權(quán)訪問該文檔的web服務(wù)網(wǎng)關(guān)中。作為選擇,向第三方提供的可以獲得該文檔的位置在創(chuàng)建它的同一個web服務(wù)網(wǎng)關(guān)中。
優(yōu)選地,該網(wǎng)關(guān)隨后接收用于該web服務(wù)的web客戶機(jī)的請求??蛇x擇地,該請求包括該文檔的細(xì)節(jié)并且該網(wǎng)關(guān)使用這些細(xì)節(jié)來匹配該請求與該web服務(wù)的配置文件。作為選擇,由該配置文件創(chuàng)建的文檔包括該客戶機(jī)用來訪問該web服務(wù)并且與該配置文件關(guān)聯(lián)的web服務(wù)網(wǎng)關(guān)中的一個位置。因此,可以使用接收該客戶請求的位置來匹配該請求與該web服務(wù)的配置文件。總之,一旦知道該配置文件,就使用它的細(xì)節(jié)將該請求轉(zhuǎn)換為適合于向該web服務(wù)發(fā)送的請求,并向該web服務(wù)發(fā)送轉(zhuǎn)換后的請求。
可選擇地,該網(wǎng)關(guān)然后可以返回到該web客戶機(jī)。作為選擇,它可以等待該web服務(wù)對轉(zhuǎn)換后的請求的響應(yīng),然后使用對轉(zhuǎn)換的請求的響應(yīng)來觸發(fā)對該web客戶請求的響應(yīng)。
該文檔最好為Web服務(wù)定義語言(WSDL)文檔,也可以為基于任何WSDL的格式,例如WSDL4J(WSDL for Java)或XLANG(帶有擴(kuò)展的WSDL)。作為選擇,該文檔可以采用另一種定義語言,例如CORBAIDL。
該配置文件優(yōu)選是根據(jù)RosettaNet商業(yè)對商業(yè)標(biāo)準(zhǔn)指定的。作為選擇,它可以是根據(jù)其它的商業(yè)對商業(yè)標(biāo)準(zhǔn),例如,cXML和因特網(wǎng)工程任務(wù)組(AS1和AS2)指定的標(biāo)準(zhǔn)。


正如附圖所示,以下參照其優(yōu)選實(shí)施方式,僅僅利用示例來描述本發(fā)明,其中圖1是其中可以有利應(yīng)用本發(fā)明之優(yōu)選實(shí)施方式的數(shù)據(jù)處理環(huán)境的示意圖;圖2是通過基于使用根據(jù)現(xiàn)有技術(shù)的UDDI注冊表和WSDL文檔的網(wǎng)關(guān),向web服務(wù)發(fā)送請求的示例web客戶機(jī)的示意圖;圖3是通過基于使用UDDI注冊表和WSDL文檔的網(wǎng)關(guān),向b2b服務(wù)發(fā)送請求的web客戶機(jī)的示例的示意圖,其中b2b服務(wù)實(shí)現(xiàn)為RosettaNet標(biāo)準(zhǔn);圖4是基于根據(jù)RosettaNet標(biāo)準(zhǔn)的服務(wù)提供的b2b配置文件生成表示b2b服務(wù)的WSDL文檔的示意圖;圖5a是收到來自b2b服務(wù)的b2b配置文件時網(wǎng)關(guān)服務(wù)器遵循的方法的流程圖;圖5b是收到用于b2b服務(wù)的web客戶機(jī)的請求時網(wǎng)關(guān)服務(wù)器遵循的方法的流程圖。
請注意,在所有附圖中,使用相同標(biāo)號表示相同部件。
具體實(shí)施例方式
圖1是其中可以有利應(yīng)用本發(fā)明之優(yōu)選實(shí)施方式的數(shù)據(jù)處理環(huán)境的框圖;在圖1中,經(jīng)由網(wǎng)絡(luò)11,如因特網(wǎng),把客戶機(jī)/服務(wù)器數(shù)據(jù)處理主機(jī)10連接到客戶機(jī)/服務(wù)器數(shù)據(jù)處理主機(jī)12和13。例如,在經(jīng)由主機(jī)13上的網(wǎng)關(guān)服務(wù)器訪問主機(jī)12上的web服務(wù)的主機(jī)10上,執(zhí)行web客戶程序??蛻魴C(jī)/服務(wù)器10具有用于執(zhí)行控制客戶機(jī)/服務(wù)器10之操作的程序的處理器101,RAM易失存儲元件102,非易失存儲器103,以及用于連接網(wǎng)絡(luò)11的網(wǎng)絡(luò)連接器104,用于與其它客戶機(jī)/服務(wù)器12和13通信。
在下面的首選實(shí)施方式中,描述web服務(wù)的文檔是WSDL文檔。請注意,WSDL文檔包含諸如端口類型、綁定、端口、消息、類型之類的web服務(wù)的細(xì)節(jié)。端口類型和消息定義web服務(wù)提供的操作和關(guān)聯(lián)參數(shù),綁定規(guī)定web服務(wù)支持的通信協(xié)議,而端口規(guī)定訪問使用該通信協(xié)議的web服務(wù)所用的通道的端點(diǎn)地址。
另外,請注意,優(yōu)選實(shí)施方式考慮使用RosettaNet標(biāo)準(zhǔn)b2b協(xié)議實(shí)現(xiàn)的b2b服務(wù)。根據(jù)RosettaNet,商業(yè)伙伴交換b2b配置文件。b2b配置文件包括以下信息與商業(yè)通信所用的一個或多個通信協(xié)議,可以聯(lián)系該商業(yè)的一個或多個位置,以及分別描述交換協(xié)議和該商業(yè)使用的操作之格式的伙伴信息處理(PIP)和XMD文檔類型定義(DTD)的細(xì)節(jié)。此外,RosettaNet標(biāo)準(zhǔn)規(guī)定許多標(biāo)準(zhǔn)PIP和XML DTD,如PIP3A4和XML DTD3A4,PIP3A4規(guī)定買方向賣方發(fā)送購買訂單請求操作并且賣方向買方發(fā)送購買訂單確認(rèn)操作,而XML DTD3A4規(guī)定上述操作的格式。因此,例如,銷售圖書的圖書商業(yè)可以向一個或多個業(yè)務(wù)伙伴發(fā)送它的b2b配置文件,然后,業(yè)務(wù)伙伴可以使用該b2b配置文件中的信息,以便從它那里購買圖書。(RosettaNet和PIP為RosettaNet組織的商標(biāo))。
圖2是通過基于使用根據(jù)現(xiàn)有技術(shù)的UDDI注冊表218和WSDL文檔208、213和214的網(wǎng)關(guān)210,向web服務(wù)206(此處記作eBook)發(fā)送請求的支持WSDL的web客戶機(jī)201的示例的示意圖??梢詮哪繕?biāo)服務(wù)器205那里獲得eBook服務(wù)206,目標(biāo)服務(wù)器205具有通道207,后者支持使用SOAPover HTTP通信協(xié)議的通信。eBook服務(wù)提供以下能力,即,使用來自客戶的購買訂單請求購買圖書,其中ebook服務(wù)向該客戶發(fā)送購買訂單確認(rèn)。在WSDL文檔WSDLl 208中描述eBook服務(wù)的細(xì)節(jié),該文檔規(guī)定用于定義PurchaseOrderRequest()和PurchaseOrderResponse()操作的端口類型和消息、用于規(guī)定SOAP/HTTP通信協(xié)議的通道207的綁定和端口以及用來聯(lián)系該服務(wù)的通道的端點(diǎn)地址。目標(biāo)服務(wù)器205向網(wǎng)關(guān)210提供(230)WSDLl 208,網(wǎng)關(guān)210將副本另存為WSDLl 213。在該網(wǎng)關(guān)中,將WSDLl 213傳送(231)給網(wǎng)關(guān)引擎212,后者將eBook服務(wù)通道的綁定和端口變成該網(wǎng)關(guān)提供的綁定和端口,由此生成(232)一個新的WSDL,即WSDLla214。在本例中,該網(wǎng)關(guān)有兩個通道,SOAP/Java消息服務(wù)(JMS)通道215和SOAP/HTTP通道216(Java是太陽微系統(tǒng)公司的注冊商標(biāo))。接著,該網(wǎng)關(guān)向已知的UDDI目錄218注冊(233)該eBook服務(wù),其實(shí)現(xiàn)方法是,向該UDDI目錄提供該服務(wù)的類型以及客戶機(jī)可以從中獲得修改的WSDL(即,WSDLla 214)的副本的servlet211的URL。該UDDI目錄例如,通過配置信息,可以為該網(wǎng)關(guān)所知。
Web客戶機(jī)進(jìn)程201運(yùn)行希望訪問eBook服務(wù)的應(yīng)用程序202。該客戶機(jī)進(jìn)程包括用于提供SOAP over JMS傳輸機(jī)制的通道203。該應(yīng)用程序首先訪問(234)該UDDI目錄218,以獲得圖書服務(wù)的細(xì)節(jié),作為響應(yīng),接收可以從中獲得eBook服務(wù)的修改過的WSDL(即WSDLla 214)的網(wǎng)關(guān)210中的servlet 211的URL的細(xì)節(jié)。接著,客戶應(yīng)用程序202向servlet 211請求(235)描述該eBook服務(wù)的WSDL文檔。作為該請求的結(jié)果,servlet 211獲得(236)WSDLla 214,并將它返回給客戶應(yīng)用程序。接著,基于該文檔,客戶應(yīng)用程序請求WSDL文檔的端口類型中指定的eBook服務(wù)的purchaseOrderRequest()操作,其方法是使用WSDL文檔的綁定中指定的SOAP/JMS通信協(xié)議,并將該請求指向WSDL文檔的端口指定的SOAP/JMS信道的端點(diǎn)地址。為生成該請求,客戶應(yīng)用程序202向客戶進(jìn)程中的SOAP/JMS通道203傳送(237)該請求,然后,SOAP/JMS通道203將它轉(zhuǎn)發(fā)(238)給網(wǎng)關(guān)服務(wù)器210中的SOAP/JMS通道215。
當(dāng)網(wǎng)關(guān)210的SOAP/JMS通道215收到該請求時,將該請求傳送(239)給網(wǎng)關(guān)引擎。該請求包括客戶應(yīng)用程序用來生成該請求的WSDL文檔,即WSDLla 214的細(xì)節(jié),并且基于該信息,網(wǎng)關(guān)引擎發(fā)現(xiàn)用來創(chuàng)建WSDLla的原始WSDL,即WSDLl 213。然后,網(wǎng)關(guān)引擎從WSDLl獲得eBook服務(wù)的綁定和端口,因此,將該請求傳送給網(wǎng)關(guān)服務(wù)器的SOAP/HTTP通道216,其中該請求給出eBook服務(wù)器的SOAP/HTTP通道207的細(xì)節(jié)。接著,SOAP/HTTP通道216向eBook服務(wù)器205的SOAP/HTTP通道207發(fā)送(241)該請求,然后由SOAP/HTTP通道207將它傳送(242)給eBook服務(wù)206。
圖2還表示第二服務(wù)221,此處記作“aBook”,該服務(wù)提供與eBook服務(wù)206相同的操作,但是是根據(jù)RosettaNet標(biāo)準(zhǔn)實(shí)現(xiàn)的。因此,根據(jù)現(xiàn)有技術(shù),支持WSDL的web客戶機(jī)201既不能直接訪問它,也不能通過網(wǎng)關(guān)服務(wù)器210來訪問它,因為需要WSDL文檔的web客戶機(jī)201和網(wǎng)關(guān)服務(wù)器210均無法識別該b2b配置文件,而aBook服務(wù)221是只在非WSDLb2b配置文件223中描述的一個b2b服務(wù)。
圖3是根據(jù)本發(fā)明的優(yōu)選實(shí)施方式,通過基于使用UDDI目錄218和WSDL文檔WSDLb2b 302的網(wǎng)關(guān)210,向aBook服務(wù)221發(fā)送請求的圖2的支持WSDL的web客戶機(jī)201的示例的示意圖,其中aBook服務(wù)221是實(shí)現(xiàn)為RosettaNet標(biāo)準(zhǔn)。請注意,在圖3中,當(dāng)使用與圖2相同的參考標(biāo)號時,其相關(guān)的功能與圖2中的功能相同。可以從目標(biāo)服務(wù)器220那里獲得aBook服務(wù)221,目標(biāo)服務(wù)器220具有通道222,后者支持使用HTTP上的RosettaNet實(shí)現(xiàn)框架(RNIF)的傳輸機(jī)制的通信。aBook服務(wù)提供以下能力,即通過使用購買訂單請求操作和購買訂單確認(rèn)操作購買圖書。在b2b配置文件223中描述aBook服務(wù)的細(xì)節(jié),其包含伙伴交換處理(PIP)和XML文檔類型定義(DTD)的細(xì)節(jié)、它支持的一個或多個通信協(xié)議以及可以聯(lián)系該商業(yè)的一個或多個端點(diǎn)地址。在本例中,b2b配置文件223包含PIP3A4和XML DTD3A4的細(xì)節(jié)、RNIF/HTTP通道222以及用于該RNIF通道的端點(diǎn)地址。PIP3A4包含交換協(xié)議的細(xì)節(jié),交換協(xié)議規(guī)定,買方向賣方發(fā)送購買訂單請求操作并且賣方向買方發(fā)送購買訂單確認(rèn)操作,而XMLDTD3A4包含購買訂單請求和購買訂單確認(rèn)操作的數(shù)據(jù)格式。
aBook服務(wù)器220向希望和它做貿(mào)易的商業(yè)合作伙伴提供它的b2b配置文件223,在本例中,向網(wǎng)關(guān)服務(wù)器210中的配置文件分析器301發(fā)送(311)它的配置文件。然后配置文件分析器301保存b2b配置文件223的副本303,并且使用來自它的信息創(chuàng)建(312)WSDL文檔WSDLb2b 302,該文檔包含aBook服務(wù)支持的操作的細(xì)節(jié)以及該網(wǎng)關(guān)支持的通道的綁定和端口。在本例中,WSDL包含購買訂單請求和購買訂單確認(rèn)操作的細(xì)節(jié),以及網(wǎng)關(guān)服務(wù)器210支持的SOAP/JMS通道215和RNIF/HTTP通道304的細(xì)節(jié)。接著,該網(wǎng)關(guān)向已知的UDDI注冊表218注冊(313)該aBook服務(wù),其實(shí)現(xiàn)方法是,向UDDI注冊表提供該服務(wù)的類型,以及客戶機(jī)可以從中獲取WSDL的副本W(wǎng)SDLb2b 302的servlet 211的URL。
在本實(shí)施方式中,向ebook服務(wù)發(fā)送請求的web客戶進(jìn)程的工作方式與圖2所示的方式相同,唯一區(qū)別是WSDL文檔,其返回到向servlet211的客戶應(yīng)用程序請求(235)。因此,客戶機(jī)向網(wǎng)關(guān)服務(wù)器的SOAP/JMS通道215發(fā)送(238)購買訂單請求操作。
當(dāng)網(wǎng)關(guān)210的SOAP/JMS通道215收到該請求時,它向網(wǎng)關(guān)引擎212傳送(239)該請求。該請求包括客戶應(yīng)用程序用來生成該請求的WSDL文檔WSDLb2b 302的細(xì)節(jié)。接著,網(wǎng)關(guān)引擎向配置文件分析器301傳送(315)該信息,配置文件分析器301查找(318)創(chuàng)建WSDL文檔所需的b2b配置文件副本303,并從其向網(wǎng)關(guān)引擎212返回細(xì)節(jié)。細(xì)節(jié)包括aBook服務(wù)221的位置以及向它發(fā)送請求所用的協(xié)議。因此,該網(wǎng)關(guān)引擎將該客戶請求從SOAP/JMS請求轉(zhuǎn)換為RNIF/HTTP請求,并然后提供給RNIF/HTTP通道304,后者經(jīng)由aBook服務(wù)器220的RNIF/HTTP通道222,將它發(fā)送(317)到aBook服務(wù)221。當(dāng)RNIF/HTTP通道收到該請求時,將它轉(zhuǎn)發(fā)(318)到aBook服務(wù)221,后者不知道它不是直接來自客戶應(yīng)用程序202的。
總之,根據(jù)圖3的實(shí)施方式,對于實(shí)現(xiàn)RosettaNet標(biāo)準(zhǔn)服務(wù)的商業(yè),該商業(yè)向網(wǎng)關(guān)提供它的b2b配置文件。該配置文件包含PIP和XML DTD的細(xì)節(jié)(其包含該商業(yè)支持的交換協(xié)議和操作的細(xì)節(jié))、它支持的通信協(xié)議以及可以聯(lián)系該商業(yè)的地址。例如,它可以公布包含PIP3A4、XML DTD3A4和RNIF/HTTP的細(xì)節(jié)的B2B配置文件。PIP3A4包含購買訂單交換協(xié)議的細(xì)節(jié),該協(xié)議規(guī)定買方發(fā)送購買訂單請求并且賣方發(fā)送購買訂單確認(rèn),而XML DTD3A4包含購買訂單請求和確認(rèn)操作的格式的細(xì)節(jié)。該網(wǎng)關(guān)有一個“配置文件分析器”,后者接收b2b配置文件并根據(jù)該b2b配置文件中包含的細(xì)節(jié)創(chuàng)建WSDL文檔。接著,客戶機(jī)獲得該WSDL并向該網(wǎng)關(guān)發(fā)送購買訂單請求,該網(wǎng)關(guān)接收包含它獲得的WSDL之細(xì)節(jié)的請求,以生成請求。然后,網(wǎng)關(guān)引擎截獲該請求并向配置文件分析器詢問該商業(yè)服務(wù)的地址的細(xì)節(jié),以便發(fā)送該請求到該配置文件分析器從用于生成WSDL的b2b配置文件中獲得的地址。然后通過使用b2b配置文件中指定的通信協(xié)議,將該請求轉(zhuǎn)發(fā)到web服務(wù)。
請注意,根據(jù)PIP3A4,在收到購買訂單請求后,商業(yè)合作伙伴首先向客戶商業(yè)合作伙伴發(fā)送收到確認(rèn)信號。隨后是購買訂單確認(rèn),客戶商業(yè)合作伙伴用收到確認(rèn)信號對它作出響應(yīng)。這可以用正常處理實(shí)現(xiàn),因為從客戶機(jī)SOAP/JMS通道203發(fā)送到網(wǎng)關(guān)SOAP/JMS通道215以及從網(wǎng)關(guān)RNIF/HTTP通道304發(fā)送到目標(biāo)商業(yè)RNIF/HTTP通道222的請求包括返回地址。對于客戶機(jī)和/或目標(biāo)服務(wù)而言,可以以異步或同步方式完成上述流程。例如,如果客戶機(jī)向網(wǎng)關(guān)發(fā)送同步購買訂單請求(例如使用SOAP/HTTP而不是SOAP/JMS)并且希望接收收到確認(rèn)信號作為同步響應(yīng),則該網(wǎng)關(guān)可以保持用來處理該客戶請求的線程,并且使用來自aBook服務(wù)的收到確認(rèn)作為釋放該線程和返回到該客戶機(jī)的觸發(fā)器。
請注意,雖然在涉及請求購買訂單的PIP3A4和XML DTD3A4方面描述了優(yōu)選實(shí)施方式,但是可以選擇使用RosettaNet標(biāo)準(zhǔn)定義的許多其它PIP和關(guān)聯(lián)XML DTD。例如,用于請求賬號設(shè)置的PIP1A1和XML DTD3A1,用于請求授權(quán)狀態(tài)的PIP1B2和XML DTD1B2,用于分發(fā)新產(chǎn)品信息的PIP2A1和XML DTD2A1等。
另外,請注意,雖然在提供與RosettaNet標(biāo)準(zhǔn)一致的b2b配置文件的b2b服務(wù)方面描述了優(yōu)選實(shí)施方式,但是作為選擇,b2b服務(wù)可以提供與任何其它標(biāo)準(zhǔn)一致的b2b配置文件或等價物,其它標(biāo)準(zhǔn)如cXML規(guī)定的標(biāo)準(zhǔn)和因特網(wǎng)工程任務(wù)組(AS1和AS2)。根據(jù)本發(fā)明,b2b服務(wù)要求向該網(wǎng)關(guān)提供足夠信息(采用非WSDL格式),以便該網(wǎng)關(guān)構(gòu)建描述該服務(wù)的WSDL文檔。足夠信息包括b2b客戶機(jī)或服務(wù)支持的接口的細(xì)節(jié)以及與它通信時使用的通信協(xié)議和地址。
另外,請注意,雖然優(yōu)選實(shí)施方式描述了供網(wǎng)關(guān)服務(wù)器使用的SOAP/JMS、SOAP/HTTP和RNIF/HTTP通道,但是在另一個實(shí)施方式中,可以省略和/或替換和/或添加一個或多個上述通道。例如,其它附加的/可替換通道可以提供使用以下協(xié)議的通信,如因特網(wǎng)Orb間協(xié)議(IIOP)、IIOP安全(IIOPS)、HTTP、HTTP安全(HTTPS)、SOAPover JMS、IIOP上的遠(yuǎn)程方法調(diào)用(RMI)、XML over JMS、簡單郵件傳輸協(xié)議(SMTP)上的SOAP或Enterprise JavaBean(JavaBeans是太陽微系統(tǒng)公司的注冊商標(biāo))。
另外,請注意,優(yōu)選實(shí)施方式的網(wǎng)關(guān)包括servlet211、引擎212和配置文件分析器301。然而,熟練技術(shù)人員明白能夠輕而易舉地在更多或更少組件之間分配上述組件提供的功能性,并且在概念上,可以利用單一組件,即網(wǎng)關(guān)210,提供該功能性。
圖4表示根據(jù)本發(fā)明的優(yōu)選實(shí)施方式,基于從b2b服務(wù)那里接收的b2b配置文件(303)和網(wǎng)關(guān)通道配置文件(406),如何創(chuàng)建WSDLb2b(302)。b2b配置文件(303)包含用來規(guī)定b2b服務(wù)提供的服務(wù)的伙伴信息處理(PIP)和XML文檔類型定義(DTD)的細(xì)節(jié)。在本例中,b2b配置文件包含分別定義交換協(xié)議和該交換協(xié)議中使用的消息(操作)的格式的PIP3A4和XML DTD3A4的細(xì)節(jié)。網(wǎng)關(guān)使用該信息來獲取XMLDTD3A4(401)和PIP3A4(404),它們是可以公開得到的文檔,并因此,不需要直接包含在b2b配置文件(303)中。通過使用標(biāo)準(zhǔn)工具,如可擴(kuò)展的樣式表語言翻譯(XSLT),首先將XML DTD3A4轉(zhuǎn)換(411)為XML模式(402),然后將涉及該操作(消息)的格式的來自XML模式(402)的信息轉(zhuǎn)換并復(fù)制(412)到用來描述該服務(wù)支持的消息的格式的WSDL文檔(302)的部分(403)中。接著,將PIP3A4(404)中的信息轉(zhuǎn)換并復(fù)制(413)到用來描述該服務(wù)支持的操作和相關(guān)交換協(xié)議的WSDL文檔(302)的部分(405)中。最后,把涉及該網(wǎng)關(guān)中的可用通道(如圖3中的通道215和304)的信息添加(414,415)到WSDL文檔(302)的部分(407,408)中,每個部分規(guī)定可通過其聯(lián)系該服務(wù)的該網(wǎng)關(guān)中的通道的綁定。
圖5a是收到來自b2b服務(wù)的b2b配置文件時,網(wǎng)關(guān)服務(wù)器遵循的方法的流程圖,該方法例如,參照圖3,在收到來自aBook服務(wù)器220的b2b配置文件223時配置文件分析器301的方法。在步驟501中,網(wǎng)關(guān)接收(圖3的311)來自b2b服務(wù)的b2b配置文件,并且在步驟502中,使用接收的b2b配置文件生成(圖3的312)WSDL文檔,例如,通過使用圖4所示的方法。WSDL文檔描述b2b服務(wù)提供的接口、可以將請求發(fā)送到網(wǎng)關(guān)服務(wù)器的通道的地址以及該通道支持的協(xié)議的細(xì)節(jié)。最后,在步驟503中,該網(wǎng)關(guān)向UDDI注冊表提供(圖3的313)b2b服務(wù)的細(xì)節(jié)以及可以從中獲得該WSDL的網(wǎng)關(guān)中的位置。然后,web客戶機(jī)可以使用提供給UDDI注冊表的b2b服務(wù)的細(xì)節(jié)來標(biāo)識它希望使用的服務(wù),例如,可以包括該web服務(wù)的細(xì)節(jié),如所銷售的商品的類型。
圖5b是收到web客戶機(jī)對b2b服務(wù)的請求時,網(wǎng)關(guān)服務(wù)器遵循的方法的流程圖,該方法例如,參照圖3,在收到(238)客戶應(yīng)用程序202對aBook服務(wù)221的請求時,通道215和304、網(wǎng)關(guān)引擎212和配置文件分析器301的方法。在步驟510中,該網(wǎng)關(guān)經(jīng)由它支持的一個通道接收(圖3的238)該請求,并且在步驟511中,從該請求獲取為生成該請求而向客戶機(jī)提供的WSDL文檔的細(xì)節(jié)。在步驟512中,匹配(圖3的318)標(biāo)識的WSDL文檔與用來生成它的b2b配置文件,例如,在圖5a的步驟502中。一旦標(biāo)識了b2b配置文件,就從中獲取涉及該b2b服務(wù)的位置以及它支持的協(xié)議的信息,并且然后在步驟513中,利用該信息來修改該請求以發(fā)送到該b2b服務(wù),例如,通過將該協(xié)議從SOAP/JMS變成RNIF/HTTP。然而,請注意,客戶機(jī)和目標(biāo)服務(wù)使用的協(xié)議可以相同,此時,無需修改用于該請求的協(xié)議。最后,在步驟514中,將該請求轉(zhuǎn)發(fā)(圖3的317)到位于該b2b配置文件中指定的位置的b2b服務(wù)。因此,基于WSDL文檔的客戶請求已經(jīng)被接收、修改和轉(zhuǎn)發(fā)到非WSDL b2b配置文件中指定的b2b服務(wù)。
請注意,作為選擇,在圖5a的步驟502中,可以把能向其發(fā)送請求的通道的地址和用來創(chuàng)建WSDL文檔的b2b配置文件關(guān)聯(lián)起來。因此,不再需要圖5b的步驟511和5l2,因為可以根據(jù)收到該請求的位置來獲取b2b配置文件。
另外,請注意,在步驟501收到b2b配置文件之后和在步驟503向UDDI注冊表提供WSDL的細(xì)節(jié)之前,無需執(zhí)行步驟502。作為選擇,可以在收到客戶機(jī)對WSDL的副本的請求時,例如,在收到圖3的請求235(圖5a和5b未示出)時,創(chuàng)建WSDL。
請注意,熟練技術(shù)人員應(yīng)該認(rèn)識到,可以用諸如Java、C和C++之類的各種編程語言來實(shí)現(xiàn)圖5a和5b描述的方法。另外,熟練技術(shù)人員應(yīng)該認(rèn)識到,一旦實(shí)現(xiàn)該方法,就可以在諸如軟盤、CD和DVD之類的適合加載到數(shù)據(jù)處理主機(jī)上并使該數(shù)據(jù)處理主機(jī)執(zhí)行該方法的介質(zhì)上,以源代碼或可執(zhí)行代碼的形式,在包括一個或多個程序的計算機(jī)產(chǎn)品中存儲該方法。
本發(fā)明提供一種方法、裝置和計算機(jī)程序產(chǎn)品,以使為使用諸如Web服務(wù)定義語言(WSDL)之類的特定文檔格式描述的商業(yè)服務(wù)提供支持的web服務(wù)網(wǎng)關(guān),進(jìn)一步為使用諸如RosettaNet規(guī)定的商業(yè)對商業(yè)(b2b)配置文件之類的不同文檔格式描述的商業(yè)服務(wù)提供支持。商業(yè)服務(wù)向網(wǎng)關(guān)提供它的配置文件,該網(wǎng)關(guān)從該配置文件生成文檔,并且然后使用生成的文檔,以使識別該文檔格式但不識別該配置文件格式的web客戶機(jī)經(jīng)由該網(wǎng)關(guān)訪問該web服務(wù)。
權(quán)利要求
1.一種用于web服務(wù)網(wǎng)關(guān)的使web客戶機(jī)能夠訪問web服務(wù)的方法,該方法包括以下步驟接收來自該web服務(wù)的配置文件,該配置文件包含如何與該web服務(wù)通信的細(xì)節(jié)并且其格式是該web客戶機(jī)不可識別的;基于該配置文件創(chuàng)建文檔,該文檔的格式是該web客戶機(jī)可識別的并且包含如何經(jīng)由該網(wǎng)關(guān)與該web服務(wù)通信的細(xì)節(jié);以及向第三方提供與該web服務(wù)和該web客戶機(jī)可以從中獲取該文檔的位置有關(guān)的信息;從而使得該web客戶機(jī)能夠使用該文檔來經(jīng)由該web服務(wù)網(wǎng)關(guān)訪問該web服務(wù)。
2.根據(jù)權(quán)利要求1的方法,進(jìn)一步包括以下步驟接收該web客戶機(jī)對該web服務(wù)的請求,該請求包括該文檔的細(xì)節(jié);通過使用該文檔的細(xì)節(jié)匹配該請求和從該web服務(wù)接收的該配置文件;通過使用來自該配置文件的細(xì)節(jié),將該請求轉(zhuǎn)換為適合于向該web服務(wù)發(fā)送的請求;以及向該web服務(wù)發(fā)送轉(zhuǎn)換的請求。
3.根據(jù)權(quán)利要求1的方法,其中如何經(jīng)由該網(wǎng)關(guān)與該web服務(wù)通信的細(xì)節(jié)包括請求訪問該web服務(wù)時該客戶機(jī)使用的該網(wǎng)關(guān)中的位置,該位置與該配置文件相關(guān)聯(lián),并且該方法進(jìn)一步包括以下步驟在該位置接收該web客戶機(jī)對該web服務(wù)的請求;從與該位置關(guān)聯(lián)的配置文件中獲取細(xì)節(jié),并且通過使用該細(xì)節(jié)將該請求轉(zhuǎn)換為適合于向該web服務(wù)發(fā)送的請求;以及向該web服務(wù)發(fā)送轉(zhuǎn)換的請求。
4.根據(jù)權(quán)利要求2或3的方法,進(jìn)一步包括以下步驟等待該web服務(wù)對轉(zhuǎn)換的請求的響應(yīng);通過使用對轉(zhuǎn)換的請求的響應(yīng)觸發(fā)對該web客戶請求的響應(yīng)。
5.使web客戶機(jī)能夠訪問web服務(wù)的web服務(wù)網(wǎng)關(guān),該網(wǎng)關(guān)包括用于接收來自該web服務(wù)的配置文件的裝置,該配置文件包含如何與該web服務(wù)通信的細(xì)節(jié)并且其格式是該web客戶機(jī)不可識別的;用于基于該配置文件創(chuàng)建文檔的裝置,該文檔的格式是該web客戶機(jī)可識別的并且包含如何經(jīng)由該網(wǎng)關(guān)與該web服務(wù)通信的方法的細(xì)節(jié);以及向第三方提供與該web服務(wù)和該web客戶機(jī)可以從中獲取該文檔的位置有關(guān)的信息的裝置;從而使得該web客戶機(jī)能夠使用該文檔來經(jīng)由該web服務(wù)網(wǎng)關(guān)訪問該web服務(wù)。
6.根據(jù)權(quán)利要求5的網(wǎng)關(guān),進(jìn)一步包括用于接收該web客戶機(jī)對該web服務(wù)的請求的裝置,該請求包括該文檔的細(xì)節(jié);通過使用該文檔的細(xì)節(jié)匹配該請求和從該web服務(wù)接收的該配置文件的裝置;通過使用來自該配置文件的細(xì)節(jié),將該請求轉(zhuǎn)換為適合于向該web服務(wù)發(fā)送的請求的裝置;以及用于向該web服務(wù)發(fā)送該轉(zhuǎn)換的請求的裝置。
7.根據(jù)權(quán)利要求5的網(wǎng)關(guān),其中如何經(jīng)由該網(wǎng)關(guān)與該web服務(wù)通信的細(xì)節(jié)包括請求訪問該web服務(wù)時該web客戶機(jī)使用的該網(wǎng)關(guān)中的位置,把該位置和該配置文件關(guān)聯(lián)起來,并且該網(wǎng)關(guān)進(jìn)一步包括用于在該位置接收該web客戶機(jī)對該web服務(wù)的請求的裝置;從與該位置關(guān)聯(lián)的配置文件中獲取細(xì)節(jié),并且使用該細(xì)節(jié)將該請求轉(zhuǎn)換為適合于向該web服務(wù)發(fā)送的請求的裝置;以及向該web服務(wù)發(fā)送該轉(zhuǎn)換的請求。
8.根據(jù)權(quán)利要求6或7的網(wǎng)關(guān),進(jìn)一步包括用于等待該web服務(wù)對該轉(zhuǎn)換的請求的響應(yīng)的裝置;通過使用對該轉(zhuǎn)換的請求的響應(yīng)觸發(fā)對該web客戶請求的響應(yīng)的裝置。
9.一種包括指令的計算機(jī)程序產(chǎn)品,其中當(dāng)在數(shù)據(jù)處理主機(jī)上執(zhí)行該指令時,使該數(shù)據(jù)處理主機(jī)執(zhí)行權(quán)利要求1-4之任一個權(quán)利要求中要求的方法。
全文摘要
本發(fā)明提供一種方法、裝置和計算機(jī)程序產(chǎn)品,以使為使用諸如Web服務(wù)定義語言(WSDL)之類的特定文檔格式描述的商業(yè)服務(wù)提供支持的web服務(wù)網(wǎng)關(guān),進(jìn)一步為使用諸如RosettaNet規(guī)定的商業(yè)對商業(yè)(b2b)配置文件之類的不同文檔格式描述的商業(yè)服務(wù)提供支持。商業(yè)服務(wù)向網(wǎng)關(guān)提供它的配置文件,該網(wǎng)關(guān)根據(jù)該配置文件生成文檔,然后使用生成的文檔,以使識別該文檔格式但不識別該配置文件格式的web客戶機(jī)經(jīng)由該網(wǎng)關(guān)訪問該web服務(wù)。
文檔編號G06Q30/00GK1723460SQ200480001609
公開日2006年1月18日 申請日期2004年3月25日 優(yōu)先權(quán)日2003年4月12日
發(fā)明者布賴恩·赫爾斯, 菲利普·戴維·羅利, 克里斯托弗·愛德華·夏普 申請人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
峨眉山市| 永春县| 开远市| 射洪县| 容城县| 霸州市| 吉林省| 基隆市| 拉萨市| 肇庆市| 吴桥县| 海安县| 明星| 巴林右旗| 徐汇区| 慈溪市| 海门市| 扎鲁特旗| 天峻县| 即墨市| 新邵县| 崇文区| 清丰县| 伊通| 漳平市| 文成县| 揭东县| 卫辉市| 万载县| 延津县| 常州市| 青铜峡市| 中超| 莱阳市| 新建县| 邹城市| 抚顺市| 冀州市| 库车县| 镇远县| 武冈市|