亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

實(shí)現(xiàn)業(yè)務(wù)聚合Mashup業(yè)務(wù)的方法、裝置和設(shè)備的制作方法

文檔序號(hào):7756878閱讀:139來(lái)源:國(guó)知局
專利名稱:實(shí)現(xiàn)業(yè)務(wù)聚合Mashup業(yè)務(wù)的方法、裝置和設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種實(shí)現(xiàn)Mashup業(yè)務(wù)的方法、裝置和設(shè)備。
背景技術(shù)
業(yè)務(wù)聚合(Mashup)是將多個(gè)不同的支持Web應(yīng)用程序接口(Web Application Interface, API)的應(yīng)用進(jìn)行堆疊、聚合形成的新型的Web應(yīng)用。Mashup服務(wù)器是一個(gè)Web 集成平臺(tái),它允許用戶輕松集成來(lái)自任意具有Web API的應(yīng)用程序的數(shù)據(jù)和資源,其主要功 能包括提供聚合應(yīng)用邏輯編排功能,聚合應(yīng)用的執(zhí)行環(huán)境以及和外部數(shù)據(jù)源、子服務(wù)進(jìn)行 fflfn 等。Mashup起源于因特網(wǎng)(Internet),屬于TOB2.0的一種新應(yīng)用。目前業(yè)界眾多 廠商的解決方案聚焦于web類的應(yīng)用,以及互聯(lián)網(wǎng)數(shù)據(jù)源的集成和融合,如web服務(wù)(web service)數(shù)據(jù)源、聚合業(yè)務(wù)(Really Simple Syndication, RSS)數(shù)據(jù)源、訂閱網(wǎng)志(ATOM) 數(shù)據(jù)源等。在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題隨著電信運(yùn)營(yíng)商對(duì)業(yè)務(wù)能力的開放,業(yè)務(wù)創(chuàng)建者,如第三方開發(fā)者、用戶、運(yùn)營(yíng)商 等,已經(jīng)可以將穩(wěn)定的、可信度高且服務(wù)質(zhì)量保障度高的電信服務(wù)數(shù)據(jù)源集成為Mashup業(yè) 務(wù)。但現(xiàn)有的方案中Mashup服務(wù)器不支持電信服務(wù)數(shù)據(jù)源的Mashup業(yè)務(wù),無(wú)法滿足用戶 的需要。

發(fā)明內(nèi)容
為解決現(xiàn)有技術(shù)中存在的問題,本發(fā)明的實(shí)施例提供一種實(shí)現(xiàn)Mashup業(yè)務(wù)的方 法、裝置和設(shè)備。為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案一種實(shí)現(xiàn)業(yè)務(wù)聚合Mashup業(yè)務(wù)的方法,所述方法包括對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按照統(tǒng)一的第一格式為所述組件生成業(yè)務(wù)提供接 Π ;根據(jù)業(yè)務(wù)請(qǐng)求者的業(yè)務(wù)請(qǐng)求消息,在已注冊(cè)的所述組件中獲取所需的組件,并按 照統(tǒng)一的第二格式為所述所需的組件生成業(yè)務(wù)請(qǐng)求接口; 利用所述業(yè)務(wù)請(qǐng)求接口接收所述業(yè)務(wù)請(qǐng)求消息,利用所述業(yè)務(wù)提供接口向所述所 需的組件請(qǐng)求業(yè)務(wù),利用所述業(yè)務(wù)請(qǐng)求接口將生成的Mashup業(yè)務(wù)應(yīng)答消息發(fā)送至業(yè)務(wù)請(qǐng) 求者。一種實(shí)現(xiàn)業(yè)務(wù)聚合Mashup業(yè)務(wù)的裝置,所述裝置包括業(yè)務(wù)提供接口生成單元,用于對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按照統(tǒng)一的第一格式為 所述組件生成業(yè)務(wù)提供接口;業(yè)務(wù)請(qǐng)求接口生成單元,用于根據(jù)業(yè)務(wù)請(qǐng)求者的業(yè)務(wù)請(qǐng)求消息,在已注冊(cè)的所述 組件中獲取所需的組件,并按照統(tǒng)一的第二格式為所述所需的組件生成業(yè)務(wù)請(qǐng)求接口 ;
業(yè)務(wù)實(shí)現(xiàn)單元,用于利用所述業(yè)務(wù)請(qǐng)求接口接收所述業(yè)務(wù)請(qǐng)求消息,利用所述業(yè) 務(wù)提供接口向所述所需的組件請(qǐng)求業(yè)務(wù),利用所述業(yè)務(wù)請(qǐng)求接口將生成的Mashup業(yè)務(wù)應(yīng) 答消息發(fā)送至業(yè)務(wù)請(qǐng)求者。 一種網(wǎng)絡(luò)設(shè)備,包括請(qǐng)求消息分析單元,用于對(duì)接收到的組件注冊(cè)請(qǐng)求消息進(jìn)行分析,將所述組件注 冊(cè)請(qǐng)求消息發(fā)送至組件注冊(cè)單元,所述組件注冊(cè)請(qǐng)求消息攜帶組件標(biāo)識(shí)ID,以及,對(duì)接收到 的業(yè)務(wù)請(qǐng)求消息進(jìn)行分析,將所述業(yè)務(wù)請(qǐng)求消息發(fā)送至組件請(qǐng)求處理單元,所述組件注冊(cè)單元,用于根據(jù)組件注冊(cè)請(qǐng)求消息中攜帶的所述組件ID,向組件 存儲(chǔ)單元發(fā)送組件查詢請(qǐng)求,查詢組件存儲(chǔ)單元中所有已經(jīng)注冊(cè)的組件中是否有相同ID 的組件已經(jīng)注冊(cè),如果沒有相同ID的組件注冊(cè),則調(diào)用MashableAPI創(chuàng)建單元,以使所述 Mashable API創(chuàng)建單元按照統(tǒng)一的第一格式為組件生成業(yè)務(wù)提供接口 ;所述組件存儲(chǔ)單 元,用于存儲(chǔ)組件和組件的描述信息,所述描述信息包括組件ID ;所述組件請(qǐng)求處理單元,用于根據(jù)業(yè)務(wù)請(qǐng)求消息,按照統(tǒng)一的第二格式為組件生 成業(yè)務(wù)請(qǐng)求接口,或者,調(diào)用所述Mashable API創(chuàng)建單元以使所述Mashable API創(chuàng)建單元 按照統(tǒng)一的第二格式為組件生成業(yè)務(wù)請(qǐng)求接口,以及利用所述業(yè)務(wù)請(qǐng)求接口接收所述業(yè)務(wù) 請(qǐng)求消息,利用所述業(yè)務(wù)提供接口向相應(yīng)的組件請(qǐng)求業(yè)務(wù),利用所述業(yè)務(wù)請(qǐng)求接口將生成 的Mashup業(yè)務(wù)應(yīng)答消息發(fā)送至業(yè)務(wù)請(qǐng)求者。本發(fā)明實(shí)施例提供的技術(shù)方案,通過采用統(tǒng)一的格式為各個(gè)數(shù)據(jù)源的組件生成業(yè) 務(wù)提供接口或業(yè)務(wù)請(qǐng)求接口,實(shí)現(xiàn)了對(duì)各種數(shù)據(jù)源的統(tǒng)一封裝機(jī)制,從而能夠支持包括電 信服務(wù)數(shù)據(jù)源在內(nèi)的多種類型的數(shù)據(jù)源通過該交互接口進(jìn)行Mashup業(yè)務(wù)的創(chuàng)建和請(qǐng)求, 增強(qiáng)了 Mashup業(yè)務(wù)的可擴(kuò)展性,滿足了用戶的需要。


為了更清楚地說(shuō)明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對(duì)實(shí)施例或現(xiàn) 有技術(shù)描述中所需要使用的附圖作簡(jiǎn)單地介紹,顯而易見地,下面描述中的附圖僅僅是本 發(fā)明的一些實(shí)施例,對(duì)于本領(lǐng)域普通技術(shù)人員來(lái)講,在不付出創(chuàng)造性勞動(dòng)的前提下,還可以 根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明一個(gè)實(shí)施例提供的實(shí)現(xiàn)Mashup業(yè)務(wù)的方法流程圖;圖2為本發(fā)明一個(gè)實(shí)施例提供的Mashup系統(tǒng)結(jié)構(gòu)示意圖;圖3為本發(fā)明又一個(gè)實(shí)施例提供的非Mashup Service數(shù)據(jù)源組件的注冊(cè)流程示 意圖;圖4(a)為本發(fā)明又一個(gè)實(shí)施例提供的Mashup Service數(shù)據(jù)源部署流程示意圖;圖4(b)為本發(fā)明又一個(gè)實(shí)施例提供的Mashup Service數(shù)據(jù)源組件的注冊(cè)流程示 意圖;圖5為本發(fā)明又一實(shí)施例提供的預(yù)定結(jié)構(gòu)的示意圖;圖6為本發(fā)明又一實(shí)施例提供的一種預(yù)定結(jié)構(gòu)的示例;圖7為本發(fā)明又一實(shí)施例提供的一種動(dòng)態(tài)生成業(yè)務(wù)請(qǐng)求接口的場(chǎng)景示意圖;圖8為本發(fā)明又一實(shí)施例提供的Mashup系統(tǒng)與AAA系統(tǒng)和計(jì)費(fèi)系統(tǒng)之間交互的 流程示意圖9為本發(fā)明又一實(shí)施例提供一種實(shí)現(xiàn)業(yè)務(wù)聚合Mashup業(yè)務(wù)的裝置結(jié)構(gòu)示意圖。
具體實(shí)施例方式下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對(duì)本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完 整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;?本發(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他 實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。本發(fā)明實(shí)施例的技術(shù)構(gòu)思在于提供一種創(chuàng)新的動(dòng)態(tài)創(chuàng)建Mashup業(yè)務(wù)的方案,該 方案通過對(duì)包括互聯(lián)網(wǎng)數(shù)據(jù)源和電信服務(wù)數(shù)據(jù)源的各種數(shù)據(jù)源的組件,使用統(tǒng)一的應(yīng)用程 序接口(Application Interface, API)格式進(jìn)行封裝、注冊(cè),以使Mashup服務(wù)器 支持各種 數(shù)據(jù)源的Mashup業(yè)務(wù)。本發(fā)明一個(gè)實(shí)施例提供的實(shí)現(xiàn)Mashup業(yè)務(wù)的方法,參見圖1,包括11 對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按照統(tǒng)一的第一格式為所述組件生成業(yè)務(wù)提供接 Π ;12:根據(jù)業(yè)務(wù)請(qǐng)求者的業(yè)務(wù)請(qǐng)求消息,在已注冊(cè)的所述組件中獲取所需的組件,并 按照統(tǒng)一的第二格式為所述所需的組件生成業(yè)務(wù)請(qǐng)求接口;13 利用所述業(yè)務(wù)請(qǐng)求接口接收所述業(yè)務(wù)請(qǐng)求消息,利用所述業(yè)務(wù)提供接口向所 述所需的組件請(qǐng)求業(yè)務(wù),利用所述業(yè)務(wù)請(qǐng)求接口將生成的Mashup業(yè)務(wù)應(yīng)答消息發(fā)送至業(yè) 務(wù)請(qǐng)求者。上述的數(shù)據(jù)源包括電信服務(wù)數(shù)據(jù)源在內(nèi)的各種數(shù)據(jù)源。Mashup業(yè)務(wù)可以作為 Mashup數(shù)據(jù)源,提供第二次開發(fā)或重用為了便于清楚描述本發(fā)明實(shí)施例的技術(shù)方案,在本發(fā)明的實(shí)施例中,采用了“第 一”、“第二”等字樣對(duì)功能和作用基本相同的相同項(xiàng)或相似項(xiàng)進(jìn)行區(qū)分,本領(lǐng)域技術(shù)人員可 以理解“第一”、“第二”等字樣并不對(duì)數(shù)量和執(zhí)行次序進(jìn)行限定。其中,所述第一格式和第二格式為相同的格式,或者,所述第一格式和第二格式為 不同的格式。即所有的業(yè)務(wù)請(qǐng)求接口具有相同的格式,所有的業(yè)務(wù)提供接口具有相同的格 式,而業(yè)務(wù)請(qǐng)求接口和業(yè)務(wù)提供接口的格式可以相同,也可以不同。其中,上述的格式可以理解為請(qǐng)求或調(diào)用業(yè)務(wù)時(shí)的具體消息構(gòu)成,例如,該消息可 以由函數(shù)和參數(shù)構(gòu)成或者該消息由協(xié)議調(diào)用構(gòu)成。示例性的,一種可以采用的格式表示如下函數(shù)(參數(shù));如Weather (city)另一種可以采用的格式表示如下協(xié)議參數(shù);如Http /GET/POST. ·.進(jìn)一步的,在步驟11之前,還可以包括按照預(yù)定結(jié)構(gòu)創(chuàng)建Mashup業(yè)務(wù),例如,業(yè)務(wù) 開發(fā)者按照組件導(dǎo)入部分(Component imports)、命名空間定義部分(Mashup namespace definition)、語(yǔ)法定義部分(Schema definition)、操作(Operation)部分四層結(jié)構(gòu)利用 動(dòng)態(tài)腳本語(yǔ)言(如JavaScript)創(chuàng)建Mashup業(yè)務(wù)。傳統(tǒng)的Mashup業(yè)務(wù)開發(fā)方法,由于 Mashup數(shù)據(jù)源的格式不統(tǒng)一,業(yè)務(wù)開發(fā)者需要同時(shí)掌握Web SerViCe、ReSt、C++、Java等具 體的編程技術(shù),開發(fā)難度大、對(duì)業(yè)務(wù)開發(fā)者的要求高。而采用本發(fā)明的這種方式使業(yè)務(wù)開發(fā)者無(wú)需額外的學(xué)習(xí)其他的開發(fā)語(yǔ)言(包括Mashup Server標(biāo)簽語(yǔ)言和網(wǎng)頁(yè)語(yǔ)言),只通過使 用擴(kuò)展的動(dòng)態(tài)腳本語(yǔ)言就能夠創(chuàng)建Mashup業(yè)務(wù),降低了業(yè)務(wù)開發(fā)難度和對(duì)業(yè)務(wù)開發(fā)者的 要求。業(yè)務(wù)請(qǐng)求者通過請(qǐng)求 信息和應(yīng)答信息得到相應(yīng)的Mashup業(yè)務(wù),享受相應(yīng)的服務(wù)。示例性的,一種請(qǐng)求信息可以為HTTP://www.sina. com. cn/user = 123&password = 123而相應(yīng)的應(yīng)答信息為用戶所請(qǐng)求的網(wǎng)頁(yè)的內(nèi)容,例如驗(yàn)證通過的網(wǎng) 頁(yè)。將請(qǐng)求信息攜帶在上述業(yè)務(wù)請(qǐng)求消息中,將應(yīng)答信息攜帶在Mashup業(yè)務(wù)應(yīng)答消息中。本發(fā)明實(shí)施例中的組件為業(yè)務(wù)請(qǐng)求者和實(shí)際的業(yè)務(wù)(如數(shù)據(jù)源)之間的代理。組 件利用業(yè)務(wù)提供接口從數(shù)據(jù)源調(diào)用相應(yīng)的業(yè)務(wù),利用業(yè)務(wù)請(qǐng)求接口接收業(yè)務(wù)請(qǐng)求者發(fā)送的 業(yè)務(wù)請(qǐng)求消息,以根據(jù)該業(yè)務(wù)請(qǐng)求消息請(qǐng)求實(shí)際的業(yè)務(wù)提供的操作(Operation)。由該業(yè)務(wù)提供接口、業(yè)務(wù)請(qǐng)求接口和相關(guān)參數(shù)構(gòu)成Mashable API。利用Mashable API統(tǒng)一對(duì)組件進(jìn)行管理,組件對(duì)外部開放具有統(tǒng)一格式的Mashable API以供Mashup業(yè)務(wù) 的創(chuàng)建和請(qǐng)求。業(yè)務(wù)提供接口在組件注冊(cè)的時(shí)候自動(dòng)生成,并隨同組件存儲(chǔ),而業(yè)務(wù)請(qǐng)求接口是 在發(fā)起業(yè)務(wù)請(qǐng)求或調(diào)用組件的時(shí)候動(dòng)態(tài)生成,業(yè)務(wù)請(qǐng)求接口根據(jù)業(yè)務(wù)請(qǐng)求者和業(yè)務(wù)提供者 的實(shí)際情況而定,無(wú)需預(yù)先存儲(chǔ)業(yè)務(wù)請(qǐng)求接口。這種方式滿足了組件注冊(cè)的動(dòng)態(tài)特性和節(jié) 省內(nèi)存的需求。本發(fā)明實(shí)施例提供的技術(shù)方案,通過采用統(tǒng)一的格式為各個(gè)數(shù)據(jù)源的組件生成業(yè) 務(wù)提供接口或業(yè)務(wù)請(qǐng)求接口,實(shí)現(xiàn)了對(duì)各種數(shù)據(jù)源的統(tǒng)一封裝機(jī)制,從而能夠支持包括電 信服務(wù)數(shù)據(jù)源在內(nèi)的多種類型的數(shù)據(jù)源通過該交互接口進(jìn)行Mashup業(yè)務(wù)的創(chuàng)建和請(qǐng)求, 增強(qiáng)了 Mashup業(yè)務(wù)的可擴(kuò)展性,滿足了用戶的需要。為了清楚描述本發(fā)明實(shí)施例的技術(shù)方案,首先,參見圖2,對(duì)本發(fā)明實(shí)施例提供的 Mashup系統(tǒng)結(jié)構(gòu)進(jìn)行介紹。在該系統(tǒng)中主要包括如下單元請(qǐng)求消息分析單元(Request Analysis Unit) 201 該單元用于接收來(lái)自客戶端, 即圖2中的業(yè)務(wù)請(qǐng)求者200所用的客戶端的各種請(qǐng)求消息,包括mashup部署請(qǐng)求消息,組 件注冊(cè)請(qǐng)求消息,業(yè)務(wù)請(qǐng)求消息,并對(duì)接收到的請(qǐng)求消息進(jìn)行分析后轉(zhuǎn)發(fā)到系統(tǒng)中相應(yīng)的 單元進(jìn)行處理。Mashup部署單元(Mashup Deployer Unit) 202 該單元用于處理mashup部署請(qǐng) 求消息,將Mashup service數(shù)據(jù)源部署到Mashup服務(wù)器上。并調(diào)用相應(yīng)的單元為Mashup service數(shù)據(jù)源的組件生成業(yè)務(wù)提供接口。組件生成單元(Component Generator Unit) 203 為該單元用于生成Mashup數(shù)據(jù) 源對(duì)應(yīng)的組件。腳本解析單元(Script Parser Unit) 204 該單元用于解析使用動(dòng)態(tài)語(yǔ)言(例如 Java Script)描述的Mashup業(yè)務(wù),并且?guī)椭M件生成單元203為該Mashup業(yè)務(wù)生成組件。組件注冊(cè)單元(Component Registration Unit) 205 該單元用于處理組件注冊(cè)請(qǐng) 求消息,并生成與業(yè)務(wù)請(qǐng)求者交互的交互代碼(該交互代碼基于腳本語(yǔ)言),以及為請(qǐng)求組 件提供相應(yīng)的代碼。注冊(cè)過程完成后,該單元還可以調(diào)用組件存儲(chǔ)單元207中存儲(chǔ)的組件 和組件詳細(xì)描述。Mashable API 創(chuàng)建單元 206 為組件創(chuàng)建 Mashable API,該 Mashable API 包括業(yè)務(wù)提供接口和業(yè)務(wù)請(qǐng)求接口。組件存儲(chǔ)單元( Components Repository Unit) 207 該單元相當(dāng)于一個(gè)存儲(chǔ)池 (Pool),用于存儲(chǔ)注冊(cè)后的組件和組件詳細(xì)描述。組件請(qǐng)求處理單元(Component Request Unit) 208 該單元用于處理組件請(qǐng)求過程。組件管理單元(Component Management Unit) 209 該單元用于管理與組件使用 過程相關(guān)的一些操作,如驗(yàn)證,鑒權(quán)和計(jì)費(fèi)。圖2中所示的Mashup系統(tǒng)能夠接收來(lái)自業(yè) 務(wù)請(qǐng)求者(Requestor) 200的請(qǐng)求,執(zhí)行部署(D印Ioy)或組件注冊(cè)等過程,或與外部服務(wù) (External Service)功能210進(jìn)行交互,或與其他的系統(tǒng)如計(jì)費(fèi)(Billing)系統(tǒng)211、認(rèn)證 鑒權(quán)系統(tǒng)(如AAA) 212進(jìn)行交互。上述只是對(duì)主要功能單元的示例性說(shuō)明,例如,該系統(tǒng)中的組件請(qǐng)求處理單元208 中還可以包括腳本執(zhí)行引擎(Script)2081,用于測(cè)試和執(zhí)行Mashup的腳本描述。下面結(jié)合圖2,對(duì)本發(fā)明又一個(gè)實(shí)施例提供的實(shí)現(xiàn)Mashup業(yè)務(wù)的方法進(jìn)行詳細(xì)說(shuō) 明。具體包括如下處理11 對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按照統(tǒng)一的第一格式為所述組件生成業(yè)務(wù)提供接□。在本發(fā)明實(shí)施例中,將數(shù)據(jù)源分為業(yè)務(wù)聚合服務(wù)(Mashup Service)數(shù)據(jù)源和非 Mashup Service數(shù)據(jù)源,對(duì)這兩類數(shù)據(jù)源采用不同的方式進(jìn)行注冊(cè)。其中,電信服務(wù)數(shù)據(jù)源 屬于非Mashup Service數(shù)據(jù)源。采用這種方式是由于,非Mashup Service數(shù)據(jù)源的組件,如Java組件、C++組件、 表述性狀態(tài)轉(zhuǎn)移(Itepresentational State Transfer, REST)組件或Web服務(wù)描述語(yǔ)言 (Web Services Description Language,WSDL)的 Web 組件,這些組件通常在實(shí)現(xiàn) Mashup 業(yè)務(wù)之前就已經(jīng)發(fā)布或使用且已經(jīng)進(jìn)行了部署,可以直接進(jìn)行組件的注冊(cè)過程。而對(duì)于 Mashup Service數(shù)據(jù)源,需要在將Mashup Service數(shù)據(jù)源部署在Mashup服務(wù)器上的過程 中生成相應(yīng)的組件。下面分別對(duì)這兩種情況進(jìn)行介紹。第一種情況、非Mashup Service數(shù)據(jù)源組件的注冊(cè)參見圖3,非Mashup Service數(shù)據(jù)源組件的注冊(cè)過程,具體包括如下步驟1 注冊(cè)請(qǐng)求者向請(qǐng)求消息分析單元發(fā)送注冊(cè)組件請(qǐng)求消息,該注冊(cè)組件請(qǐng)求消息 中攜帶組件的信息,如組件的數(shù)據(jù)和組件標(biāo)識(shí)(ID)。組件ID可以為唯一標(biāo)識(shí)組件的一個(gè)字 符串,如“SMS”、“匪S”,“WeatherInf0”,組件ID由組件提供者或組件生成者提供。但不局限 于此,組件的信息還可以包括組件關(guān)鍵字,組件關(guān)鍵字可以指示該組件所支持的業(yè)務(wù)類型, 不同的組件可以有相同的組件關(guān)鍵字,例如,對(duì)組件ID分別為SMS1、SMS2和SMS3的組件, 組件關(guān)鍵字都可以為SMS。不同組件的注冊(cè)組件請(qǐng)求消息中攜帶的組件信息也不同。例如,當(dāng)組件為C++組件時(shí),上述注冊(cè)組件請(qǐng)求消息中攜帶C++的動(dòng)態(tài)鏈接庫(kù)文 件(.dll文件)數(shù)據(jù)和組件ID;當(dāng)所述組件為Java組件時(shí),上述注冊(cè)組件請(qǐng)求消息中攜 帶java數(shù)據(jù)包、組件ID和數(shù)據(jù)類型描述,本發(fā)明實(shí)施例提供的一種數(shù)據(jù)類型描述為對(duì)象名 (屬性值1,屬性值2,...);當(dāng)所述組件為REST組件時(shí),上述注冊(cè)組件請(qǐng)求消息中攜帶REST 統(tǒng)一資源定位符(Universal Resource Locator, URL)和組件ID ;當(dāng)所述組件為WSDL的Web組件時(shí),上述注冊(cè)組件請(qǐng)求消息中攜帶HTTP URL和組件ID。2 請(qǐng)求消息分析單元對(duì)接收到的注冊(cè)組件請(qǐng)求消息進(jìn)行分析后,將該注冊(cè)請(qǐng)求消 息轉(zhuǎn)發(fā)至組件注冊(cè)單元。3 組件注冊(cè)單元向組件存儲(chǔ)單元發(fā)送組件查詢(Query Component)請(qǐng)求,查詢組 件存儲(chǔ)單元中所有已經(jīng)注冊(cè)的組件,判斷是否有相同的組件已經(jīng)注冊(cè)。這里,相同的組件主 要指具有相同組件ID的組件。

4 組件存儲(chǔ)單元接收到組件查詢請(qǐng)求后,在存儲(chǔ)的已注冊(cè)組件的組件ID中,查找 是否存在與上述注冊(cè)組件請(qǐng)求消息中攜帶的組件ID(如SMS)相同的組件ID,若存在,則說(shuō) 明組件ID為SMS的組件已經(jīng)注冊(cè)了,若不存在說(shuō)明組件ID為SMS的組件還未注冊(cè)。組件 存儲(chǔ)單元反饋查詢結(jié)果給組件注冊(cè)單元。5a 如果有相同ID的組件注冊(cè),則組件注冊(cè)單元反饋發(fā)送注冊(cè)失敗信息給注冊(cè)請(qǐng) 求者,以使注冊(cè)請(qǐng)求者及時(shí)獲知注冊(cè)失敗進(jìn)行后續(xù)的處理,如注冊(cè)請(qǐng)求者可以更新組件ID, 例如,將組件ID的字符串SMS更改為SMS1、SMS2或SMS3,重新發(fā)起注冊(cè)流程。5b 如果沒有相同ID的組件注冊(cè),則組件注冊(cè)單元發(fā)送交互接口生成請(qǐng)求 (Generate Script Adaptor)給 Mashable API 創(chuàng)建單元。Mashable API 創(chuàng)建單元為相應(yīng) 的組件生成業(yè)務(wù)提供接口,對(duì)不同的數(shù)據(jù)源的組件生成業(yè)務(wù)提供接口時(shí)采用的方式和代碼 也不同。例如,Mashable API創(chuàng)建單元根據(jù)動(dòng)態(tài)鏈接庫(kù)文件(.dll文件)數(shù)據(jù)和組件ID, 使用Java Native Interface(JNI)為C++組件生成業(yè)務(wù)提供接口 ;根據(jù)java數(shù)據(jù)包和組件ID,以Java類和組件ID為Java組件生成業(yè)務(wù)提供接口, 該業(yè)務(wù)提供接口通過Java提供的類和函數(shù)調(diào)用實(shí)際的業(yè)務(wù);根據(jù)REST URL [HTTP URL]和組件ID為REST組件生成業(yè)務(wù)提供接口。當(dāng)所述組件為Web服務(wù)描述語(yǔ)言WSDL的Web組件時(shí),根據(jù)所述Web組件的HTTP URL和組件ID生成業(yè)務(wù)提供接口。上述生成的業(yè)務(wù)提供接口具有統(tǒng)一的格式,如第一格式。6b Cashable API創(chuàng)建單元向組件注冊(cè)單元返回創(chuàng)建成功的信息,以及為組件的 生成業(yè)務(wù)提供接口的參數(shù)。若創(chuàng)建失敗,Mashable API創(chuàng)建單元向組件注冊(cè)單元發(fā)送創(chuàng)建 失敗消息,圖中僅示出了創(chuàng)建成功的場(chǎng)景。7b 組件注冊(cè)單元發(fā)送存儲(chǔ)消息(Store Component)給組件存儲(chǔ)單元,組件存儲(chǔ) 單元存儲(chǔ)上述注冊(cè)成功的組件及其相關(guān)信息,如該組件的業(yè)務(wù)提供接口,組件的數(shù)據(jù)和組 件ID等。8b 組件存儲(chǔ)成功后,組件存儲(chǔ)單元返回組件注冊(cè)單元存儲(chǔ)成功信息。%、組件注冊(cè)單元返回注冊(cè)組件成功消息給請(qǐng)求消息分析單元。10b、請(qǐng)求消息分析單元反饋?zhàn)?cè)組件成功消息給注冊(cè)請(qǐng)求者。另若8b中組件存儲(chǔ)不成功,后續(xù)步驟反饋組件注冊(cè)失敗的信息給注冊(cè)請(qǐng)求者。第二種情況、Mashup Service數(shù)據(jù)源組件的注冊(cè)首先通過將Mashup Service數(shù)據(jù)源部署在Mashup服務(wù)器上的過程生成組件,參 見圖4(a),包括如下步驟401 業(yè)務(wù)部署者發(fā)送Mashup部署請(qǐng)求消息至請(qǐng)求消息分析單元,該消息包括Mashup業(yè)務(wù)和參數(shù)。Mashup業(yè)務(wù)主要由Mashup腳本描述構(gòu)成,參數(shù)主要包括組件ID,業(yè)務(wù) 描述和訪問策略。應(yīng)當(dāng)注意到 ,在進(jìn)行組件注冊(cè)之前,本發(fā)明實(shí)施例還包括按照預(yù)定結(jié)構(gòu)創(chuàng)建 Mashup業(yè)務(wù),例如,業(yè)務(wù)開發(fā)者按照組件導(dǎo)入部分、命名空間定義部分、語(yǔ)法定義部分、操作 部分四層結(jié)構(gòu)利用動(dòng)態(tài)腳本語(yǔ)言(如JavaScript)創(chuàng)建Mashup業(yè)務(wù)。傳統(tǒng)的Mashup業(yè)務(wù)開 發(fā)方法,由于Mashup數(shù)據(jù)源的格式不統(tǒng)一,業(yè)務(wù)開發(fā)者需要同時(shí)掌握Web Service, Rest、 C++、Java等具體的編程技術(shù),開發(fā)難度大、對(duì)業(yè)務(wù)開發(fā)者的要求高。而采用本發(fā)明的這種 方式使業(yè)務(wù)開發(fā)者無(wú)需額外的學(xué)習(xí)其他的開發(fā)語(yǔ)言(包括Mashup Server標(biāo)簽語(yǔ)言和網(wǎng)頁(yè) 語(yǔ)言),只通過使用擴(kuò)展的動(dòng)態(tài)腳本語(yǔ)言就能夠創(chuàng)建Mashup業(yè)務(wù),降低了業(yè)務(wù)開發(fā)難度和 對(duì)業(yè)務(wù)開發(fā)者的要求。402 請(qǐng)求消息分析單元對(duì)Mashup部署請(qǐng)求消息進(jìn)行分析后,轉(zhuǎn)發(fā)該消息到 Mashup部署單元。403 =Mashup部署單元向組件生成單元發(fā)送組件生成請(qǐng)求,請(qǐng)求組件生成單元為 該Mashup Service數(shù)據(jù)源生成組件。404 組件生成單元發(fā)送腳本解析請(qǐng)求,請(qǐng)求腳本解析單元解析Mashup業(yè)務(wù)的腳 本描述并獲取其中的關(guān)鍵字及參數(shù),關(guān)鍵字包括導(dǎo)入(imports),命名空間(namespace), 模式(schema),操作(operation)。405 腳本解析單元將解析結(jié)果,如關(guān)鍵字和參數(shù)等,反饋至組件生成單元。406 組件生成單元根據(jù)腳本解析單元反饋的參數(shù)和imports,namespace, schema, operation等關(guān)鍵字來(lái)解析得到Mashup業(yè)務(wù)的相應(yīng)組件和操作。組件生成單元按照預(yù)定結(jié)構(gòu)解析得到Mashup業(yè)務(wù)的相應(yīng)組件,該預(yù)定結(jié)構(gòu)與 創(chuàng)建Mashup業(yè)務(wù)時(shí)采用的預(yù)定結(jié)構(gòu)一致。參見圖5,在該預(yù)定結(jié)構(gòu)中包括組件導(dǎo)入部分 (Component imports)、命名空間定義部分(Mashup namespace definition)、語(yǔ)法定義部 分(Schema definition)、操作(Operation)部分。其中,操作部分可以包括一個(gè)或多個(gè)操 作,如包括操作1至操作n,n為序號(hào)。參見圖6,為本發(fā)明實(shí)施例提供的一種預(yù)定結(jié)構(gòu)的示 例。Mashup業(yè)務(wù)的相應(yīng)組件是指創(chuàng)建Mashup業(yè)務(wù)時(shí)所導(dǎo)入的組件,利用組件ID、關(guān)鍵 字及參數(shù)解析得到該所導(dǎo)入的一個(gè)或多個(gè)組件。例如,當(dāng)組件ID為identifier時(shí),根據(jù) 導(dǎo)入操作的命令importComponent ( “identifier”)可以解析出Mashup業(yè)務(wù)中組件ID為 identifier 的組件。407 在解析獲得相應(yīng)的組件后,組件生成單元將部署成功消息發(fā)送至Mashup部
署單元。408 =Mashup部署單元反饋部署成功消息至請(qǐng)求消息分析單元。409 請(qǐng)求消息分析單元轉(zhuǎn)發(fā)該部署成功消息給業(yè)務(wù)部署者。注若在解析或部署過程中出現(xiàn)錯(cuò)誤,那么407-409中反饋部署失敗消息。當(dāng)部署成功后,對(duì)Mashup Service數(shù)據(jù)源的組件進(jìn)行注冊(cè),注冊(cè)過程與圖3所示 的過程基本相同,不再贅述。主要的區(qū)別點(diǎn)在于,參見圖4(b),進(jìn)行注冊(cè)可以在該組件生成 后,直接由組件生成單元向組件存儲(chǔ)單元發(fā)送注冊(cè)查詢請(qǐng)求(Query Component),參見圖 4 (b)中步驟411,發(fā)起組件注冊(cè)流程,在步驟412中由組件存儲(chǔ)單元向組件生成單元反饋查詢結(jié)果,這種處理方式簡(jiǎn)化了處理的流程。其中圖4(b)中的步驟413和414參見圖3中的 步驟5b和6b,步驟415和416參見圖3中的7b和8b。在注冊(cè)過程中,對(duì)Mashup Service 數(shù)據(jù)源的組件,根據(jù)M ashup Service數(shù)據(jù)源的腳本描述(如javascript代碼)生成業(yè)務(wù) 提供接口。通過上述的組件注冊(cè)過程,各個(gè)數(shù)據(jù)源的組件都具有了業(yè)務(wù)提供接口,利用該業(yè) 務(wù)提供接口可以直接調(diào)用實(shí)際的業(yè)務(wù)。如Java組件可以利用業(yè)務(wù)提供接口創(chuàng)建java類的 對(duì)象,調(diào)用java的函數(shù)。12:根據(jù)業(yè)務(wù)請(qǐng)求,在已注冊(cè)的所述組件中獲取相應(yīng)的組件,并按照統(tǒng)一的第二格 式為獲取到的所述組件動(dòng)態(tài)生成業(yè)務(wù)請(qǐng)求接口。對(duì)所有組件生成的業(yè)務(wù)請(qǐng)求接口具有統(tǒng)一的格式,如第二格式。與業(yè)務(wù)請(qǐng)求接口 相對(duì)應(yīng)的第二格式可以與業(yè)務(wù)提供接口所對(duì)應(yīng)的第一格式相同,也可以不同。本發(fā)明實(shí)施例的技術(shù)方案提供一種門戶功能給業(yè)務(wù)請(qǐng)求者,業(yè)務(wù)請(qǐng)求者可以查詢 注冊(cè)的組件。對(duì)于每個(gè)已經(jīng)注冊(cè)的組件,Mashup服務(wù)器按需生成業(yè)務(wù)請(qǐng)求接口。所謂按需 主要指根據(jù)業(yè)務(wù)請(qǐng)求者的狀態(tài)和所述組件的數(shù)據(jù)源的狀態(tài)來(lái)為組件生成業(yè)務(wù)請(qǐng)求接口。業(yè)務(wù)請(qǐng)求者的狀態(tài)主要包括業(yè)務(wù)請(qǐng)求者的發(fā)起端狀態(tài)(如傳統(tǒng)終端或新型終 端)、業(yè)務(wù)呈現(xiàn)方式和響應(yīng)時(shí)間中的一種或多種;組件的數(shù)據(jù)源的狀態(tài)包括數(shù)據(jù)源的負(fù)載 能力、數(shù)據(jù)源的組件的服務(wù)質(zhì)量(Quality of Service, QoS)和數(shù)據(jù)源的可靠性。當(dāng)上述的狀態(tài)發(fā)生變化時(shí),生成的業(yè)務(wù)請(qǐng)求接口也發(fā)生變化。例如,當(dāng)用戶(業(yè)務(wù) 請(qǐng)求者)通過瀏覽器訪問已注冊(cè)組件的注冊(cè)信息變化時(shí),生成的業(yè)務(wù)請(qǐng)求接口也會(huì)發(fā)生變 化。所以業(yè)務(wù)請(qǐng)求接口是動(dòng)態(tài)生成的,并不預(yù)先進(jìn)行存儲(chǔ),避免了由于預(yù)先存儲(chǔ)業(yè)務(wù)請(qǐng)求接 口而需要占用大量?jī)?nèi)存所帶來(lái)的問題,動(dòng)態(tài)生成業(yè)務(wù)請(qǐng)求接口的方式能夠滿足組件注冊(cè)的 動(dòng)態(tài)特性和節(jié)省內(nèi)存的需求。下面結(jié)合圖7所示的場(chǎng)景,具體說(shuō)明基于業(yè)務(wù)請(qǐng)求者的查詢動(dòng)態(tài)生成業(yè)務(wù)請(qǐng)求接 口的流程。701 業(yè)務(wù)請(qǐng)求者發(fā)送業(yè)務(wù)請(qǐng)求消息到請(qǐng)求消息分析單元,該業(yè)務(wù)請(qǐng)求消息中攜帶 組件關(guān)鍵字,或者組件ID。702:請(qǐng)求消息分析單元分析業(yè)務(wù)請(qǐng)求消息后,將業(yè)務(wù)請(qǐng)求消息轉(zhuǎn)發(fā)給組件請(qǐng)求處
理單元。703:組件請(qǐng)求處理單元發(fā)送組件查詢請(qǐng)求到組件存儲(chǔ)單元中查詢所請(qǐng)求的組件。704 組件存儲(chǔ)單元將查詢結(jié)果返回給組件請(qǐng)求處理單元;如果組件存儲(chǔ)單元中有對(duì)應(yīng)的注冊(cè)組件,即已注冊(cè)組件的組件ID與所述業(yè)務(wù)請(qǐng) 求消息中攜帶的組件關(guān)鍵字匹配時(shí),則查詢成功,執(zhí)行步驟705。如果組件存儲(chǔ)單元中沒有組件ID對(duì)應(yīng)的組件信息,即已注冊(cè)組件的組件ID與所 述業(yè)務(wù)請(qǐng)求消息中攜帶的組件關(guān)鍵字不匹配時(shí),則查詢失敗,則發(fā)送查詢失敗信息給請(qǐng)求 消息分析單元。705 判斷組件請(qǐng)求處理單元自身能否生成業(yè)務(wù)請(qǐng)求接口,若組件請(qǐng)求處理單元自 身能夠生成該組件的業(yè)務(wù)請(qǐng)求接口時(shí),執(zhí)行步驟708 ;當(dāng)組件請(qǐng)求處理單元無(wú)法生成相應(yīng)的業(yè)務(wù)請(qǐng)求接口時(shí),則執(zhí)行步驟706。706 組件請(qǐng)求處理單元發(fā)送交互接口生成請(qǐng)求到Mashable API創(chuàng)建單元以創(chuàng)建該組件的業(yè)務(wù)請(qǐng)求接口。707 Cashable API創(chuàng)建單元?jiǎng)?chuàng)建業(yè)務(wù)請(qǐng)求接口并返回創(chuàng)建結(jié)果,當(dāng)創(chuàng)建成功時(shí), 執(zhí)行步驟708。其中,當(dāng)存在多個(gè)組件,這些組件的組件ID都與業(yè)務(wù)請(qǐng)求消息中的組件關(guān)鍵字相 匹配時(shí),組件請(qǐng)求處理單元或Mashable API創(chuàng)建單元根據(jù)業(yè)務(wù)請(qǐng)求者的狀態(tài)和已注冊(cè)組件 的數(shù)據(jù)源的狀態(tài),選擇合適的已注冊(cè)組件,為所選擇的組件動(dòng)態(tài)生成業(yè)務(wù)請(qǐng)求接口。708 當(dāng)生成業(yè)務(wù)請(qǐng)求接口時(shí),組件請(qǐng)求處理單元發(fā)送應(yīng)答消息,如接口生成成功 消息至請(qǐng)求消息分析單元。709 請(qǐng)求消息分析單元向業(yè)務(wù)請(qǐng)求者反饋接口生成成功消息。下面以一個(gè)具體的Mashup業(yè)務(wù)“Etour”為例進(jìn)行說(shuō)明。Mashup 業(yè)務(wù) Etour 是由 weather 業(yè)務(wù)禾口 FlightSearchService 業(yè)務(wù)組成。對(duì) weather業(yè)務(wù),如果組件存儲(chǔ)單元中存儲(chǔ)了組件關(guān)鍵字為weather系列的組件,例如,Java 組件weather業(yè)務(wù),REST組件weather業(yè)務(wù)等。業(yè)務(wù)請(qǐng)求者請(qǐng)求Etour業(yè)務(wù)時(shí),Mashup服 務(wù)器根據(jù)組件的數(shù)據(jù)源的狀態(tài)(負(fù)載,組件的QoS,數(shù)據(jù)源可靠性等)和業(yè)務(wù)請(qǐng)求者的狀態(tài) (請(qǐng)求者所使用的終端,業(yè)務(wù)呈現(xiàn)方式,響應(yīng)時(shí)間等)選擇最合適的組件,如Java組件,并為 該組件動(dòng)態(tài)地生成業(yè)務(wù)請(qǐng)求接口,該業(yè)務(wù)請(qǐng)求接口包括組件調(diào)用協(xié)議,調(diào)用函數(shù)和參數(shù)等 信息。對(duì)FlightSearchService業(yè)務(wù)采用相同的方式進(jìn)行處理。業(yè)務(wù)請(qǐng)求者根據(jù)業(yè)務(wù)請(qǐng)求接口的協(xié)議,調(diào)用函數(shù)和參數(shù)等,請(qǐng)求調(diào)用實(shí)際的業(yè)務(wù)。 業(yè)務(wù)請(qǐng)求接口涉及到的調(diào)用函數(shù),調(diào)用協(xié)議和參數(shù)的舉例如下java組件weather業(yè)務(wù)的業(yè)務(wù)請(qǐng)求接口對(duì)應(yīng)于Java調(diào)用函數(shù)Weather (city), city是參數(shù),指示城市名,調(diào)用協(xié)議為SOAP協(xié)議,還可以包括其它參數(shù),如指示能夠提供的 QoS的參數(shù),該參數(shù)指示響應(yīng)時(shí)間為0. 3s,反饋信息格式為SMS ;WSDL的Web組件weather業(yè)務(wù)的業(yè)務(wù)請(qǐng)求接口對(duì)應(yīng)于提供根據(jù)WSDL描述提供的 調(diào)用函數(shù),參數(shù)是X,y,其中χ和y分別表示經(jīng)度和緯度,綁定SOAP調(diào)用協(xié)議。還可以包括 其它參數(shù),如指示能夠提供的QoS的參數(shù),該參數(shù)指示響應(yīng)時(shí)間是0. 5s,反饋信息格式為網(wǎng) 頁(yè)。13:利用所述業(yè)務(wù)請(qǐng)求接口接收所述業(yè)務(wù)請(qǐng)求消息,利用所述業(yè)務(wù)提供接口向所 述所需的組件請(qǐng)求業(yè)務(wù),利用所述業(yè)務(wù)請(qǐng)求接口將生成的Mashup業(yè)務(wù)應(yīng)答消息發(fā)送至業(yè) 務(wù)請(qǐng)求者。 將業(yè)務(wù)提供接口和業(yè)務(wù)請(qǐng)求接口進(jìn)行匹配,即將業(yè)務(wù)提供接口和業(yè)務(wù)請(qǐng)求接口進(jìn) 行匹配,一個(gè)業(yè)務(wù)提供接口可以對(duì)應(yīng)于一個(gè)業(yè)務(wù)請(qǐng)求接口,一個(gè)業(yè)務(wù)提供接口也可以對(duì)應(yīng) 于多個(gè)業(yè)務(wù)請(qǐng)求接口。業(yè)務(wù)提供接口包括對(duì)一個(gè)或多個(gè)業(yè)務(wù)的調(diào)用,業(yè)務(wù)請(qǐng)求接口包括對(duì) 單個(gè)或組合的mashup業(yè)務(wù)的調(diào)用。一個(gè)組件所對(duì)應(yīng)的業(yè)務(wù)提供接口和業(yè)務(wù)請(qǐng)求接口構(gòu)成 這個(gè)組件的Mashable API,Mashable API是組件對(duì)外部暴露的接口。下面以一個(gè)具體的Mashup業(yè)務(wù)“Etour”為例說(shuō)明組件的使用過程。組件的使用過程包括根據(jù)業(yè)務(wù)請(qǐng)求消息查詢已經(jīng)注冊(cè)的組件,注冊(cè)的組件按照 簡(jiǎn)單的負(fù)載均衡的原理(如順序調(diào)用,隨機(jī)分配等)以及業(yè)務(wù)創(chuàng)建者的實(shí)際需求被聚合 (Mashup) 0按照操作(operation)定義調(diào)用相應(yīng)的導(dǎo)入組件。組件使用的mashable API 可以用標(biāo)準(zhǔn)的HTML標(biāo)記〈script〉導(dǎo)入,例如
〈script type=' text/javascript' src = ‘. . ./stub/sms' ></script)其中,“ sms ”是一個(gè)組件ID.表 權(quán)利要求
1.一種實(shí)現(xiàn)業(yè)務(wù)聚合Mashup業(yè)務(wù)的方法,其特征在于,所述方法包括對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按照統(tǒng)一的第一格式為所述組件生成業(yè)務(wù)提供接口; 根據(jù)業(yè)務(wù)請(qǐng)求者的業(yè)務(wù)請(qǐng)求消息,在已注冊(cè)的所述組件中獲取所需的組件,并按照統(tǒng) 一的第二格式為所述所需的組件生成業(yè)務(wù)請(qǐng)求接口;利用所述業(yè)務(wù)請(qǐng)求接口接收所述業(yè)務(wù)請(qǐng)求消息,利用所述業(yè)務(wù)提供接口向所述所需的 組件請(qǐng)求業(yè)務(wù),利用所述業(yè)務(wù)請(qǐng)求接口將生成的Mashup業(yè)務(wù)應(yīng)答消息發(fā)送至業(yè)務(wù)請(qǐng)求者。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按照統(tǒng) 一的第一格式為所述組件生成業(yè)務(wù)提供接口包括接收注冊(cè)組件請(qǐng)求消息,所述注冊(cè)組件請(qǐng)求消息中攜帶組件標(biāo)識(shí)ID ; 在存儲(chǔ)的已注冊(cè)組件中,查詢所述組件ID所對(duì)應(yīng)的組件是否已經(jīng)注冊(cè),若已經(jīng)注冊(cè), 更新所述組件ID,重新執(zhí)行注冊(cè)流程,若未注冊(cè),按照統(tǒng)一的第一格式生成業(yè)務(wù)提供接口并 存儲(chǔ)。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,所述對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按照 統(tǒng)一的第一格式為所述組件生成業(yè)務(wù)提供接口包括當(dāng)所述組件為C++組件時(shí),根據(jù)C++組件的動(dòng)態(tài)鏈接庫(kù)文件和組件ID,通過Java本地 接口 Java Native Interface生成所述業(yè)務(wù)提供接口 ;當(dāng)所述組件為Java組件時(shí),根據(jù)Java組件的java數(shù)據(jù)包和組件ID生成所述業(yè)務(wù)提 供接口 ;當(dāng)所述組件為表述性狀態(tài)轉(zhuǎn)移REST組件時(shí),根據(jù)所述REST組件的REST統(tǒng)一資源定位 符URL和組件ID生成所述業(yè)務(wù)提供接口 ;當(dāng)所述組件為Web服務(wù)描述語(yǔ)言WSDL的Web組件時(shí),根據(jù)所述Web組件的HTTP URL 和組件ID生成所述業(yè)務(wù)提供接口。
4.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述根據(jù)業(yè)務(wù)請(qǐng)求者的業(yè)務(wù)請(qǐng)求消息,在 已注冊(cè)的所述組件中獲取所需的組件,并按照統(tǒng)一的第二格式為所述所需的組件生成業(yè)務(wù) 請(qǐng)求接口包括接收業(yè)務(wù)請(qǐng)求消息,所述業(yè)務(wù)請(qǐng)求消息中攜帶組件關(guān)鍵字;當(dāng)已注冊(cè)組件的組件ID與所述業(yè)務(wù)請(qǐng)求消息中攜帶的組件關(guān)鍵字匹配時(shí),獲取所述 已注冊(cè)的組件;根據(jù)業(yè)務(wù)請(qǐng)求者的狀態(tài)和所述已注冊(cè)組件的數(shù)據(jù)源的狀態(tài),選擇合適的已注冊(cè)組件, 并為所述選擇的組件動(dòng)態(tài)生成業(yè)務(wù)請(qǐng)求接口。
5.根據(jù)權(quán)利要求4所述的的方法,其特征在于,所述業(yè)務(wù)請(qǐng)求者的狀態(tài)至少包括如下的一種或其組合 業(yè)務(wù)請(qǐng)求者所使用的終端、業(yè)務(wù)呈現(xiàn)方式和響應(yīng)時(shí)間; 所述組件的數(shù)據(jù)源的狀態(tài)至少包括如下的一種或其組合所述數(shù)據(jù)源的負(fù)載能力、所述數(shù)據(jù)源的組件的服務(wù)質(zhì)量QoS和所述數(shù)據(jù)源的可靠性。
6.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,在所述對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按 照統(tǒng)一的第一格式為所述組件生成業(yè)務(wù)提供接口之前,所述方法還包括所述數(shù)據(jù)源包括業(yè)務(wù)聚合服務(wù)Mashup service數(shù)據(jù)源和非Mashup service數(shù)據(jù)源; 在將Mashup service數(shù)據(jù)源部署在Mashup服務(wù)器上的部署過程中,對(duì)所述Mashupservice數(shù)據(jù)源的Mashup業(yè)務(wù)按照預(yù)定結(jié)構(gòu)進(jìn)行解析得到所述Mashup service數(shù)據(jù)源的 組件。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,在將Mashupservice數(shù)據(jù)源部署在 Mashup服務(wù)器上之前,所述方法還包括利用動(dòng)態(tài)腳本語(yǔ)言按照如下預(yù)定結(jié)構(gòu)創(chuàng)建Mashup業(yè)務(wù) 組件導(dǎo)入部分、命名空間定義部分、語(yǔ)法定義部分和操作定義部分。
8.一種實(shí)現(xiàn)業(yè)務(wù)聚合Mashup業(yè)務(wù)的裝置,其特征在于,所述裝置包括業(yè)務(wù)提供接口生成單元,用于對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按照統(tǒng)一的第一格式為所述 組件生成業(yè)務(wù)提供接口;業(yè)務(wù)請(qǐng)求接口生成單元,用于根據(jù)業(yè)務(wù)請(qǐng)求者的業(yè)務(wù)請(qǐng)求消息,在已注冊(cè)的所述組件 中獲取所需的組件,并按照統(tǒng)一的第二格式為所述所需的組件生成業(yè)務(wù)請(qǐng)求接口 ;業(yè)務(wù)實(shí)現(xiàn)單元,用于利用所述業(yè)務(wù)請(qǐng)求接口接收所述業(yè)務(wù)請(qǐng)求消息,利用所述業(yè)務(wù)提 供接口向所述所需的組件請(qǐng)求業(yè)務(wù),利用所述業(yè)務(wù)請(qǐng)求接口將生成的Mashup業(yè)務(wù)應(yīng)答消 息發(fā)送至業(yè)務(wù)請(qǐng)求者。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述數(shù)據(jù)源包括業(yè)務(wù)聚合服務(wù)Mashup service數(shù)據(jù)源和非Mashup service數(shù)據(jù)源,所述裝置還包括組件獲得單元,用于在將Mashup service數(shù)據(jù)源部署在Mashup服務(wù)器上的部署過程 中,對(duì)所述Mashup service數(shù)據(jù)源的Mashup業(yè)務(wù)按照預(yù)定結(jié)構(gòu)進(jìn)行解析得到所述Mashup service數(shù)據(jù)源的組件。
10.根據(jù)權(quán)利要求8所述的裝置,其特征在于,所述裝置還包括業(yè)務(wù)創(chuàng)建單元,用于利 用動(dòng)態(tài)腳本語(yǔ)言按照如下預(yù)定結(jié)構(gòu)創(chuàng)建Mashup業(yè)務(wù) 組件導(dǎo)入部分、命名空間定義部分、語(yǔ)法定義部分和操作定義部分。
11.根據(jù)權(quán)利要求8所述的裝置,其特征在于, 所述業(yè)務(wù)提供接口生成單元包括第一接收模塊,用于接收注冊(cè)組件請(qǐng)求消息,所述注冊(cè)組件請(qǐng)求消息中攜帶組件ID ; 查詢處理模塊,用于在存儲(chǔ)的已注冊(cè)組件中,查詢所述組件ID所對(duì)應(yīng)的組件是否已經(jīng) 注冊(cè),若已經(jīng)注冊(cè),更新所述組件ID,重新執(zhí)行注冊(cè)流程,若未注冊(cè),按照統(tǒng)一的第一格式生 成業(yè)務(wù)提供接口并存儲(chǔ)。
12.根據(jù)權(quán)利要求8所述的裝置,其特征在于, 所述業(yè)務(wù)請(qǐng)求接口生成單元包括第二接收模塊,用于接收業(yè)務(wù)請(qǐng)求消息,所述業(yè)務(wù)請(qǐng)求消息中攜帶組件關(guān)鍵字; 獲取模塊,用于當(dāng)已注冊(cè)組件的組件ID與所述業(yè)務(wù)請(qǐng)求消息中攜帶的組件關(guān)鍵字匹 配時(shí),獲取所述已注冊(cè)的組件;生成模塊,用于根據(jù)業(yè)務(wù)請(qǐng)求者的狀態(tài)和所述已注冊(cè)組件的數(shù)據(jù)源的狀態(tài),選擇合適 的已注冊(cè)組件,并為所述選擇的組件動(dòng)態(tài)生成業(yè)務(wù)請(qǐng)求接口。
13.—種網(wǎng)絡(luò)設(shè)備,其特征在于,包括請(qǐng)求消息分析單元,用于對(duì)接收到的組件注冊(cè)請(qǐng)求消息進(jìn)行分析,將所述組件注冊(cè)請(qǐng) 求消息發(fā)送至組件注冊(cè)單元,所述組件注冊(cè)請(qǐng)求消息攜帶組件標(biāo)識(shí)ID,以及,對(duì)接收到的業(yè) 務(wù)請(qǐng)求消息進(jìn)行分析,將所述業(yè)務(wù)請(qǐng)求消息發(fā)送至組件請(qǐng)求處理單元,所述組件注冊(cè)單元,用于根據(jù)組件注冊(cè)請(qǐng)求消息中攜帶的所述組件ID,向組件存儲(chǔ) 單元發(fā)送組件查詢請(qǐng)求,查詢組件存儲(chǔ)單元中所有已經(jīng)注冊(cè)的組件中是否有相同ID的 組件已經(jīng)注冊(cè),如果沒有相同ID的組件注冊(cè),則調(diào)用Mashable API創(chuàng)建單元,以使所述 Mashable API創(chuàng)建單元按照統(tǒng)一的第一格式為組件生成業(yè)務(wù)提供接口 ;所述組件存儲(chǔ)單 元,用于存儲(chǔ)組件和組件的描述信息,所述描述信息包括組件ID ;所述組件請(qǐng)求處理單元,用于根據(jù)業(yè)務(wù)請(qǐng)求消息,按照統(tǒng)一的第二格式為組件生成業(yè) 務(wù)請(qǐng)求接口,或者,調(diào)用所述Mashable API創(chuàng)建單元以使所述Mashable API創(chuàng)建單元按 照統(tǒng)一的第二格式為組件生成業(yè)務(wù)請(qǐng)求接口,以及利用所述業(yè)務(wù)請(qǐng)求接口接收所述業(yè)務(wù)請(qǐng) 求消息,利用所述業(yè)務(wù)提供接口向相應(yīng)的組件請(qǐng)求業(yè)務(wù),利用所述業(yè)務(wù)請(qǐng)求接口將生成的 Mashup業(yè)務(wù)應(yīng)答消息發(fā)送至業(yè)務(wù)請(qǐng)求者。
14.根據(jù)權(quán)利要求13所述網(wǎng)絡(luò)設(shè)備,其特征在于,所述網(wǎng)絡(luò)設(shè)備還包括Mashup部署單 元、組件生成單元和腳本解析單元,所述請(qǐng)求消息分析單元,還用于對(duì)接收到的mashup部署請(qǐng)求消息進(jìn)行分析,將所述 mashup部署請(qǐng)求消息發(fā)送至所述Mashup部署單元;所述Mashup部署單元,用于根據(jù)mashup部署請(qǐng)求消息,將Mashup service數(shù)據(jù)源部 署到Mashup服務(wù)器上并請(qǐng)求組件生成單元為所述Mashup service數(shù)據(jù)源的Mashup業(yè)務(wù) 生成組件;所述組件生成單元,用于根據(jù)所述Mashup部署單元的請(qǐng)求,向腳本解析單元發(fā)送腳本 解析請(qǐng)求,請(qǐng)求腳本解析單元解析Mashup業(yè)務(wù)的腳本描述并獲取解析結(jié)果,以按照預(yù)定的 結(jié)構(gòu)為所述Mashup業(yè)務(wù)生成組件;所述腳本解析單元,用于解析使用動(dòng)態(tài)語(yǔ)言描述的Mashup Service數(shù)據(jù)源的Mashup 業(yè)務(wù),將解析結(jié)果發(fā)送給所述組件生成單元。
15.根據(jù)權(quán)利要求13或14所述網(wǎng)絡(luò)設(shè)備,其特征在于,所述網(wǎng)絡(luò)設(shè)備還包括組件管理單元,用于接收組件請(qǐng)求處理單元的驗(yàn)證、鑒權(quán)或計(jì)費(fèi)請(qǐng)求消息,向驗(yàn)證、鑒 權(quán)系統(tǒng)請(qǐng)求對(duì)用戶身份和用戶訪問權(quán)限的驗(yàn)證;根據(jù)組件調(diào)用信息生成業(yè)務(wù)使用詳單,以 使計(jì)費(fèi)系統(tǒng)利用所述業(yè)務(wù)使用詳單進(jìn)行計(jì)費(fèi)。
全文摘要
本發(fā)明實(shí)施例提供了一種實(shí)現(xiàn)Mashup業(yè)務(wù)的方法、裝置和設(shè)備,涉及通信技術(shù)領(lǐng)域,用于支持多種類型的數(shù)據(jù)源的Mashup業(yè)務(wù)。本發(fā)明實(shí)施例提供的實(shí)現(xiàn)業(yè)務(wù)聚合Mashup業(yè)務(wù)的方法包括對(duì)數(shù)據(jù)源的組件進(jìn)行注冊(cè)并按照統(tǒng)一的第一格式為所述組件生成業(yè)務(wù)提供接口;根據(jù)業(yè)務(wù)請(qǐng)求者的業(yè)務(wù)請(qǐng)求消息,在已注冊(cè)的所述組件中獲取所需的組件,并按照統(tǒng)一的第二格式為所述所需的組件生成業(yè)務(wù)請(qǐng)求接口;利用所述業(yè)務(wù)請(qǐng)求接口接收所述業(yè)務(wù)請(qǐng)求消息,利用所述業(yè)務(wù)提供接口向所述所需的組件請(qǐng)求業(yè)務(wù),利用所述業(yè)務(wù)請(qǐng)求接口將生成的Mashup業(yè)務(wù)應(yīng)答消息發(fā)送至業(yè)務(wù)請(qǐng)求者。
文檔編號(hào)H04L29/08GK102137136SQ201010252829
公開日2011年7月27日 申請(qǐng)日期2010年8月13日 優(yōu)先權(quán)日2010年8月13日
發(fā)明者倪瑞特·阿芒哥, 庫(kù)塔斯哇拉·樸拉胡, 陳珊, 馬其鋒, 馬赫斯哇拉·瑞迪 申請(qǐng)人:華為技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1