專利名稱:消息傳送代理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及通過無線和有線網(wǎng)絡(luò)在硬件或軟件組件之間以及在移動(dòng)裝置和非移動(dòng)裝置之間傳遞電子消息的技術(shù)。
背景技術(shù):
面向消息的中間件(MOM)已經(jīng)面市多年。在1998年10月,SunMicrosystems公司的Java消息服務(wù)(JMS)融入業(yè)界標(biāo)準(zhǔn)。該標(biāo)準(zhǔn)在編程接口級(jí)描述如何從Java應(yīng)用訪問消息傳送中間件。JMS的兩個(gè)主要抽象是“主題”(發(fā)布/訂閱消息傳送)和“隊(duì)列”(點(diǎn)到點(diǎn)消息傳送)。雖然該標(biāo)準(zhǔn)描述了至消息傳送中間件的接口,但是未指定中間件的實(shí)現(xiàn)。也未指定無線移動(dòng)裝置的集成(諸如電話、尋呼機(jī)、個(gè)人數(shù)字助理或者膝上型計(jì)算機(jī))。
現(xiàn)有消息傳送中間件允許通過有線網(wǎng)絡(luò)(以太網(wǎng)或令牌環(huán))從非移動(dòng)裝置(個(gè)人計(jì)算機(jī)或服務(wù)器計(jì)算機(jī))訪問中間件。這些網(wǎng)絡(luò)一般運(yùn)行諸如TCP/IP、HTTP或SSL之類的通信協(xié)議。支持無線移動(dòng)裝置則要求中間件的廠商在無線傳輸協(xié)議(如WAP、GSM、SMS、GPRS或UMTS)之上實(shí)現(xiàn)消息傳輸協(xié)議,以及將此消息傳輸協(xié)議集成到中間件中。
由于如下原因而導(dǎo)致適用性的局限·JMS消息傳送中間件的現(xiàn)有技術(shù)水平需要比移動(dòng)裝置中可用的存儲(chǔ)容量更多的計(jì)算機(jī)存儲(chǔ)容量。
·在JMS消息傳送中間件產(chǎn)品的現(xiàn)有技術(shù)水平中,不支持時(shí)常與企業(yè)網(wǎng)斷開的移動(dòng)裝置。
·JMS消息傳送中間件產(chǎn)品的現(xiàn)有技術(shù)水平不支持諸如WAP、SMS、GPRS或UMTS之類的無線協(xié)議,除非TCP/IP、HTTP或SSL協(xié)議是在這些無線協(xié)議之上使用。
·雖然JMS消息傳送中間件產(chǎn)品的現(xiàn)有技術(shù)水平支持諸如TCP/IP、HTTP或SSL之類的通信協(xié)議,但是不支持任何其他通信協(xié)議。
此外,還有相當(dāng)大的性能影響,因?yàn)門CP、HTTP或SSL是為有線網(wǎng)絡(luò)設(shè)計(jì)的,因此在無線網(wǎng)絡(luò)上表現(xiàn)得并不好。
發(fā)明內(nèi)容
因此,本發(fā)明的第一個(gè)目的是提供一種用于在充當(dāng)客戶機(jī)且運(yùn)行于移動(dòng)無線裝置上的應(yīng)用與運(yùn)行于有線網(wǎng)絡(luò)的計(jì)算機(jī)上的應(yīng)用之間傳遞數(shù)據(jù)的系統(tǒng)。本發(fā)明的另一個(gè)目的是提供一種用于在充當(dāng)客戶機(jī)且運(yùn)行于移動(dòng)無線裝置上的應(yīng)用與運(yùn)行于有線網(wǎng)絡(luò)的計(jì)算機(jī)上的應(yīng)用之間傳遞數(shù)據(jù)的方法。本發(fā)明的又一個(gè)目的是提供一種可裝入計(jì)算機(jī)存儲(chǔ)器的計(jì)算機(jī)程序,該程序可用于在移動(dòng)無線裝置上的客戶機(jī)與運(yùn)行于計(jì)算機(jī)上的應(yīng)用之間傳遞消息。本發(fā)明的再一個(gè)目的是提供一種計(jì)算機(jī)程序產(chǎn)品,它包括計(jì)算機(jī)可用媒體,所述計(jì)算機(jī)可用媒體上具有用于在連接到有線計(jì)算機(jī)網(wǎng)絡(luò)的計(jì)算機(jī)上實(shí)現(xiàn)的計(jì)算機(jī)可讀程序代碼裝置。本發(fā)明的再一個(gè)目的是提供一種直接可裝入移動(dòng)裝置的存儲(chǔ)器并且使所述移動(dòng)裝置能夠訪問現(xiàn)有技術(shù)狀態(tài)的消息傳送中間件產(chǎn)品的計(jì)算機(jī)程序,而不需要將消息傳送中間件完全裝入移動(dòng)裝置的存儲(chǔ)器中。
本公開中概述的消息傳送代理系統(tǒng)是一種大的技術(shù)改進(jìn),使現(xiàn)有技術(shù)水平的消息傳送中間件產(chǎn)品的用戶可以通過任何無線傳輸協(xié)議向移動(dòng)裝置發(fā)送消息和從移動(dòng)裝置接收消息,而不需要將現(xiàn)有技術(shù)水平的消息傳送中間件裝入移動(dòng)裝置的存儲(chǔ)器。
用于運(yùn)行所述消息代理安裝的系統(tǒng)包括由計(jì)算機(jī)程序來實(shí)現(xiàn)的消息代理,而且系統(tǒng)體系結(jié)構(gòu)包括至少一個(gè)可插入?yún)f(xié)議適配器。在本發(fā)明的最佳實(shí)施例中,代理還包括至少一個(gè)可插入數(shù)據(jù)庫適配器。
本發(fā)明還包括可直接裝入移動(dòng)裝置的存儲(chǔ)器中的薄消息客戶機(jī)計(jì)算機(jī)程序。此薄消息客戶機(jī)程序通過將代理計(jì)算機(jī)程序用作所述薄客戶機(jī)與面向消息的中間件之間的中介并且由此采用至少一種無線傳輸協(xié)議,使移動(dòng)裝置可以根據(jù)現(xiàn)有技術(shù)水平與面向消息的中間件交換消息和命令令牌。所述薄消息客戶機(jī)計(jì)算機(jī)程序?qū)崿F(xiàn)至少一種可插入?yún)f(xié)議適配器的系統(tǒng)體系結(jié)構(gòu)。最好是,它還實(shí)現(xiàn)至少一種可插入數(shù)據(jù)庫適配器的系統(tǒng)體系結(jié)構(gòu)。
根據(jù)第一最佳實(shí)施例,代理計(jì)算機(jī)程序是可安裝在計(jì)算機(jī)上用于實(shí)現(xiàn)與現(xiàn)有技術(shù)水平中間件的接口的程序模塊。但是,根據(jù)另一個(gè)實(shí)施例,所述代理可以被直接集成到中間件中。這樣代理計(jì)算機(jī)程序就成為修改后的中間件軟件工具的一部分。
下文參考附圖描述本發(fā)明的實(shí)施例的實(shí)例。圖中圖1給出了根據(jù)本發(fā)明的系統(tǒng)的最佳實(shí)施例的框圖,以及圖2表示根據(jù)本發(fā)明的方法的實(shí)施例的UML序列示意圖。
具體實(shí)施例方式
現(xiàn)在參考附圖,圖1給出了本發(fā)明的最佳實(shí)施例的框圖。它更具體地表示了裝在非移動(dòng)計(jì)算機(jī)和移動(dòng)無線裝置上的軟件工具的安裝,此安裝包括·消息代理1;·通過無線通信協(xié)議鏈接到代理1的薄JMS消息客戶機(jī)2、2′、2″;·根據(jù)現(xiàn)有技術(shù)水平的面向JMS消息的中間件3;以及·面向JMS消息的中間件客戶機(jī)4。
消息代理1可以與面向JMS消息的中間件3分開設(shè)置,也可以集成在其中。
此框圖僅僅是消息代理基礎(chǔ)設(shè)施布局的一個(gè)實(shí)例。在具體安裝中可能存在任何數(shù)量的消息代理、薄JMS消息客戶機(jī)、面向消息的中間件產(chǎn)品以及面向消息的中間件產(chǎn)品客戶機(jī)。
消息代理1可以在常規(guī)計(jì)算機(jī)網(wǎng)絡(luò)服務(wù)器上實(shí)現(xiàn),例如在Windows-NT服務(wù)器上實(shí)現(xiàn),并且可以例如在后臺(tái)運(yùn)行。它維護(hù)客戶機(jī)連接,維護(hù)客戶機(jī)對(duì)JMS主題和隊(duì)列的訂閱,接收和轉(zhuǎn)發(fā)JMS消息,并且在其數(shù)據(jù)庫中存儲(chǔ)JMS消息,使得它們在客戶機(jī)與代理斷開時(shí)不致丟失。
消息代理1包括至少一個(gè)可插入傳輸協(xié)議適配器。圖1表示六個(gè)特定無線傳輸協(xié)議適配器(WAP 1a、UMTS 1b、HTTP 1c、DAB/GSM Data 1d、SMS1e、GPRS 1f)的實(shí)例。還可以有任何數(shù)量的附加無線協(xié)議適配器1g??刹迦?yún)f(xié)議適配器使消息代理可以采用任意的無線協(xié)議向消息客戶機(jī)發(fā)送消息和從其接收消息。協(xié)議適配器實(shí)施現(xiàn)有的傳輸協(xié)議,諸如GPRS或TCP/IP,并且在現(xiàn)有傳輸協(xié)議上還提供了附加功能。此類附加功能的實(shí)例包括消息的數(shù)據(jù)加密和獲得保證的遞送。一種協(xié)議適配器被分為一個(gè)或多個(gè)協(xié)議對(duì)象。每個(gè)協(xié)議對(duì)象提供此協(xié)議適配器所提供的功能性的一部分。例如,協(xié)議對(duì)象可以對(duì)數(shù)據(jù)加密,或者壓縮數(shù)據(jù),或者請(qǐng)求數(shù)據(jù)的發(fā)送方重傳已在網(wǎng)絡(luò)上丟失的消息。
消息代理1還包括數(shù)據(jù)庫適配器。這使?fàn)罾砜梢詫⑾⒑涂蛻魴C(jī)訂閱信息存儲(chǔ)到任意數(shù)據(jù)庫中。
啟動(dòng)時(shí),消息代理1讀取它的配置數(shù)據(jù),并將所有配置的協(xié)議適配器初始化。它還將該代理已知的所有消息客戶機(jī)的主題和隊(duì)列訂閱初始化。在運(yùn)行時(shí),可以啟動(dòng)附加協(xié)議適配器,或者可以停止正在運(yùn)行的協(xié)議適配器,而不中斷消息代理業(yè)務(wù)(但是,如果停止一種特定協(xié)議適配器,則基于此適配器的業(yè)務(wù)不再可用)。在運(yùn)行時(shí),可以將附加客戶機(jī)連接到該代理,也可以將現(xiàn)有客戶機(jī)與代理斷開。
各個(gè)薄JMS消息客戶機(jī)2、2′、2″被安裝在移動(dòng)無線裝置中,諸如移動(dòng)電話、具有無線調(diào)制解調(diào)器的小的膝上型計(jì)算機(jī)、掌上設(shè)備或者任何其它包含處理器、存儲(chǔ)器和用于無線通信的通信裝置的設(shè)備。它包括JMS程序設(shè)計(jì)庫,此JMS程序設(shè)計(jì)庫與現(xiàn)有技術(shù)水平的消息傳送中間件3所使用的程序設(shè)計(jì)庫的至少一部分完全相同或相似。此薄JMS消息客戶機(jī)庫小得足以裝入具備有限存儲(chǔ)和處理能力的移動(dòng)裝置的存儲(chǔ)器中。
薄JMS消息客戶機(jī)庫的這樣小的占用區(qū)是這樣實(shí)現(xiàn)的將JMS客戶機(jī)應(yīng)用程序應(yīng)該執(zhí)行或維護(hù)的大多數(shù)計(jì)算和大多數(shù)狀態(tài)信息從客戶機(jī)卸載給代理。這種薄JMS消息客戶機(jī)主要由JMS接口構(gòu)成。實(shí)現(xiàn)接口所必需的大多數(shù)Java代碼在代理上運(yùn)行,而不在薄JMS消息客戶機(jī)上運(yùn)行。代理還維護(hù)與該客戶機(jī)相關(guān)的JMS狀態(tài)信息。例如,代理存儲(chǔ)尚未被客戶機(jī)確認(rèn)的JMS消息。薄JMS消息客戶機(jī)也不需要存儲(chǔ)訂閱的隊(duì)列和主題的名稱。此信息只被代理存儲(chǔ)。在內(nèi)部,薄JMS客戶機(jī)使用代碼信息、如數(shù)字值來指代主題和隊(duì)列。此代碼信息可以小得只有一個(gè)字節(jié)。這些隊(duì)列和主題的實(shí)際表示被包含在代理中,對(duì)于每個(gè)主題或隊(duì)列,這些表示可以為數(shù)百或數(shù)千字節(jié)。當(dāng)薄JMS客戶機(jī)希望發(fā)布有關(guān)某個(gè)主題的消息時(shí),該客戶機(jī)向代理只發(fā)送JMS消息和有關(guān)該主題的代碼信息。所有這些都顯著地減少了薄JMS客戶機(jī)的占用區(qū)。
薄JMS消息客戶機(jī)2還包含命令和消息傳輸系統(tǒng),該系統(tǒng)包括用于將客戶機(jī)希望訂閱什么JMS主題和隊(duì)列通知給代理的傳輸協(xié)議適配器2a、2a′、2a″。
消息客戶機(jī)2、2′、2″還包括數(shù)據(jù)庫適配器。這使客戶機(jī)能夠使用任何數(shù)據(jù)庫來本地存儲(chǔ)JMS消息和其它信息。消息數(shù)據(jù)庫是必要的,它確??蛻魴C(jī)提交的JMS消息和JMS訂閱在客戶機(jī)因缺少無線網(wǎng)絡(luò)覆蓋或代理未運(yùn)行而無法與狀理通信的情況下不致丟失。
消息客戶機(jī)2、2′、2″利用其傳輸協(xié)議適配器2a、2a′、2a″鏈接到消息代理1。如果匹配的協(xié)議適配器正在代理上運(yùn)行,則連接成功。消息客戶機(jī)和消息代理之間的進(jìn)一步通信是根據(jù)JMS的常用發(fā)布/訂閱或點(diǎn)到點(diǎn)模型來進(jìn)行的。
JMS主題或JMS隊(duì)列的命名和管理與所涉及的協(xié)議適配器無關(guān)。如果客戶機(jī)采用“WAP”協(xié)議適配器連接到代理,則它可以與利用“GPRS”協(xié)議適配器連接的客戶機(jī)進(jìn)行通信,前提是這兩個(gè)客戶都使用相同的JMS主題或隊(duì)列。
協(xié)議適配器封裝至少一個(gè)需要實(shí)現(xiàn)以下目的的邏輯·與諸如HTTP、WAP或GSM Data的傳輸協(xié)議的接口。
·指定和確保消息傳送業(yè)務(wù)的質(zhì)量。
某些傳輸協(xié)議以“盡量發(fā)送”的傳遞方式工作。因此,單單與某個(gè)特定協(xié)議適配不總是足夠的(除非“盡量發(fā)送”是所期望的消息傳送保證)。因此,協(xié)議適配器同時(shí)包括傳輸協(xié)議機(jī)制和提高基本網(wǎng)絡(luò)傳遞保證的業(yè)務(wù)質(zhì)量機(jī)制。
網(wǎng)絡(luò)可靠性通過如下方式來提高。發(fā)送協(xié)議適配器對(duì)所有呼出消息附加一個(gè)可靠性指示符、如序列號(hào)。該可靠性指示符在發(fā)送消息時(shí)以預(yù)定方式改變。例如,在每次發(fā)送消息之后序列號(hào)按1遞增。接收方應(yīng)用使用呼入消息的可靠性指示符來檢測是否丟失消息。在所述實(shí)例中,當(dāng)剛接收的消息的序列號(hào)大于前一消息的序列號(hào)加一時(shí),就是這種情況。若消息丟失,則接收方向發(fā)送方發(fā)送命令令牌,指示將要重傳哪個(gè)消息。然后,發(fā)送方重傳所請(qǐng)求的消息。發(fā)送方將消息保存在本地?cái)?shù)據(jù)庫,從而能夠滿足消息重傳請(qǐng)求。
數(shù)據(jù)庫適配器封裝至少一個(gè)實(shí)現(xiàn)如下目的所需的邏輯·與諸如PointBase、Oracle、DB/2或Sybase之類的數(shù)據(jù)庫產(chǎn)品實(shí)現(xiàn)接口,或者與諸如JDBC或ODBC之類的便攜式數(shù)據(jù)庫訪問軟件實(shí)現(xiàn)接口。
·存儲(chǔ)和檢索JMS消息和JMS訂閱請(qǐng)求。
消息客戶機(jī)2實(shí)現(xiàn)例如Sun Microsystems的JMS API。它與代理配合工作以實(shí)現(xiàn)完整JMS功能性。當(dāng)客戶機(jī)希望訂閱JMS隊(duì)列或主題時(shí),它的命令子系統(tǒng)創(chuàng)建包含訂閱信息的命令令牌。然后利用無線通信將該命令令牌發(fā)送到代理。為此,該令牌通過客戶機(jī)端的協(xié)議適配器2a、2a′、2a″發(fā)送,并被代理端的協(xié)議適配器1a、1b、1c、1d、1e、1f或1g接收。
在接收到命令令牌時(shí),代理1讀取該令牌中所含的訂閱信息,并且代表客戶機(jī)通過現(xiàn)有技術(shù)水平的中間件執(zhí)行JMS訂閱。
當(dāng)客戶機(jī)希望取消JMS主題或隊(duì)列的訂閱時(shí),當(dāng)客戶機(jī)希望發(fā)送JMS消息時(shí),或者對(duì)于客戶機(jī)所請(qǐng)求的任何其它JMS動(dòng)作,都會(huì)產(chǎn)生另外的命令令牌。
當(dāng)在代理1代表客戶機(jī)訂閱的主題或隊(duì)列中接收到JMS消息時(shí),該代理創(chuàng)建包含該JMS消息的數(shù)據(jù)的消息令牌。然后利用無線通信將消息令牌發(fā)送到客戶機(jī)2。為此,該令牌通過代理端的協(xié)議適配器1a、1b、1c、1d、1e、1f或1g發(fā)送,并被客戶機(jī)端的協(xié)議適配器2a、2a′、2a″接收。
當(dāng)薄JMS消息客戶機(jī)2接收到這種消息令牌時(shí),客戶機(jī)創(chuàng)建JMS消息。然后,客戶機(jī)對(duì)該JMS消息進(jìn)行處理。例如,該消息可以在圖形用戶界面上被顯示。
按照現(xiàn)有技術(shù)水平的面向JMS消息的中間件3可以是任何JMS消息傳送中間件產(chǎn)品,例如IBM公司的MQSeries、SoftWired公司的iBus或Progress公司的SonicMQ。
面向JMS消息的中間件客戶機(jī)4是利用現(xiàn)有技術(shù)水平的面向JMS消息的中間件3在非移動(dòng)計(jì)算機(jī)(即連接到有線計(jì)算機(jī)網(wǎng)絡(luò)的計(jì)算機(jī))上實(shí)現(xiàn)的客戶機(jī)應(yīng)用。還可以有一個(gè)或多個(gè)按照現(xiàn)有技術(shù)水平的面向JMS消息的中間件客戶機(jī)4。
對(duì)于描述不同實(shí)例之間的通信的實(shí)例,假定薄JMS消息客戶機(jī)2訂閱主題T。此主題T可以隨應(yīng)用而定,表示股票報(bào)價(jià)的信息流、體育新聞的信息流,或者表示承載數(shù)字音頻的傳輸信道。當(dāng)現(xiàn)有技術(shù)水平的面向JMS消息的中間件客戶機(jī)4對(duì)主題T發(fā)送一個(gè)JMS消息時(shí),該消息首先被傳送到現(xiàn)有技術(shù)水平的面向JMS消息的中間件3。然后代理1代表薄客戶機(jī)2接收該消息。接著,代理1以消息令牌的形式利用其傳輸協(xié)議適配器1a、1b、1c、1d、1e、1f或1g之一將該JMS消息發(fā)送到客戶機(jī)2。最后,客戶機(jī)2接收到有關(guān)主題T的JMS消息,就像是它在直接訪問現(xiàn)有技術(shù)水平的面向JMS消息的中間件3。
為了詳細(xì)表示此過程,下面參考圖2說明在運(yùn)行于移動(dòng)無線裝置上且充當(dāng)客戶機(jī)的應(yīng)用與運(yùn)行于非移動(dòng)計(jì)算機(jī)上的應(yīng)用之間傳遞信息的方法的實(shí)例。
圖2的順序圖說明箭頭所表示的交互作用,這發(fā)生在移動(dòng)客戶機(jī)和代理之間,在一次信息交換過程中,即,在移動(dòng)客戶機(jī)為主題T創(chuàng)建JMSTopicPublisher以及隨后發(fā)布關(guān)于主題T發(fā)布的消息的過程中。在該圖中,移動(dòng)客戶機(jī)由陰影填充的虛線框表示。該圖右側(cè)的垂直線表示消息代理。方法步驟由不會(huì)與圖1的參考標(biāo)號(hào)混淆的數(shù)字來表示。
1.當(dāng)接收到應(yīng)用關(guān)于JMS發(fā)布/訂閱主題“T”的請(qǐng)求時(shí),創(chuàng)建JMSTopicPublisher對(duì)象“Pub”。然后,“Pub”將使移動(dòng)客戶機(jī)應(yīng)用能夠發(fā)布有關(guān)主題“T”的JMS消息。
2.“薄消息客戶機(jī)庫”創(chuàng)建命令令牌,其中包含代理為了代表客戶機(jī)分配JMS TopicPublisher所需的信息。該命令令牌包含表示“創(chuàng)建發(fā)布者”命令的代碼信息(例如一個(gè)字節(jié)的數(shù)字)。它還包含發(fā)布者應(yīng)受其限制的JMS主題“T”(例如一個(gè)字節(jié)的數(shù)字)以及表示發(fā)布者的信息代碼“P”(例如一個(gè)字節(jié)的數(shù)字)。
3.代理代表薄客戶機(jī)為主題“T”創(chuàng)建JMS TopicPublisher“Pub”。
4.代理將TopicPublisher“Pub”與代碼信息“P”相關(guān)聯(lián)。這可以通過利用代碼信息“P”作為搜索關(guān)鍵字將TopicPublisher“Pub”存儲(chǔ)在數(shù)據(jù)字典中來完成。
5.客戶機(jī)應(yīng)用程序創(chuàng)建包含應(yīng)用特定信息(例如訂書單)的JMS消息“msg”。當(dāng)然,此步驟以及隨后的步驟6可以在步驟3和步驟4之后執(zhí)行,也可以與它們同時(shí)執(zhí)行。
6.客戶機(jī)應(yīng)用現(xiàn)在利用TopicPublisher“Pub”發(fā)布有關(guān)主題“T”的JMS消息“msg”。
7.“薄消息客戶機(jī)庫”創(chuàng)建命令令牌,其中包含代理為了利用現(xiàn)有技術(shù)水平的JMS中間件發(fā)布消息所需的信息。該命令令牌包含表示‘進(jìn)行發(fā)布’命令的代碼信息(例如一個(gè)字節(jié)的數(shù)字)。它還包含TopicPublisher的代碼信息(代碼″P″)以及消息“msg”。
8.代理檢索與代碼“P”相關(guān)聯(lián)的TopicPublisher“Pub”。此發(fā)布者“pub”是在步驟4中與代碼“T”相關(guān)聯(lián)的。
9.最后,代理利用現(xiàn)有技術(shù)水平的JMS中間件發(fā)布有關(guān)主題“T”的JMS消息“msg”。具體來說,代理將有關(guān)主題“T”的消息“msg”轉(zhuǎn)發(fā)到使用JMS的現(xiàn)有技術(shù)水平的JMS應(yīng)用程序。
所用術(shù)語的詞匯表TCP傳輸控制協(xié)議IP 因特網(wǎng)協(xié)議HTTP 超文本傳輸協(xié)議WAP無線應(yīng)用協(xié)議WDPWAP無線數(shù)據(jù)報(bào)協(xié)議SSL安全套接層JMSJava消息服務(wù)(http//java.sun.com/products/jms/)PDA個(gè)人數(shù)字助理SMS短消息業(yè)務(wù)GSM全球移動(dòng)電信系統(tǒng)DAB數(shù)字音頻廣播JDBC Java數(shù)據(jù)庫連接(http//java.sun.com/produets/jdbc/)ODBC Microsoft的開放數(shù)據(jù)庫連接MOM面向消息的中間件
權(quán)利要求
1.一種用于在運(yùn)行于移動(dòng)無線裝置上且充當(dāng)客戶機(jī)的應(yīng)用與運(yùn)行于計(jì)算機(jī)上的應(yīng)用之間傳遞信息的系統(tǒng),所述計(jì)算機(jī)連接到有線計(jì)算機(jī)網(wǎng)絡(luò),所述系統(tǒng)包括在連接到所述計(jì)算機(jī)網(wǎng)絡(luò)的計(jì)算機(jī)上實(shí)現(xiàn)的代理;以及用于在所述代理和所述客戶機(jī)之間建立通信信道的無線通信裝置,所述客戶機(jī)各包括與面向消息的中間件(MOM)客戶機(jī)所用的程序設(shè)計(jì)庫的至少一部分對(duì)應(yīng)的程序設(shè)計(jì)庫,以及具有實(shí)現(xiàn)與傳輸協(xié)議的接口的邏輯的傳輸協(xié)議適配器,由此定義用于所述通信信道上的通信的至少一種通信傳輸協(xié)議;所述代理實(shí)現(xiàn)面向消息的中間件(MOM)客戶機(jī)的功能并且包括至少一種傳輸協(xié)議適配器,所述適配器具有實(shí)現(xiàn)與所述通信傳輸協(xié)議的接口的邏輯。
2.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述代理包括在啟動(dòng)所述消息代理之前實(shí)現(xiàn)的無線傳輸協(xié)議適配器和在所述消息代理運(yùn)行時(shí)由程序代碼實(shí)現(xiàn)的無線傳輸協(xié)議適配器中的至少一種。
3.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述至少一種傳輸協(xié)議適配器支持HTTP(超文本傳輸協(xié)議)或SMS(短消息業(yè)務(wù))或WAP(無線應(yīng)用協(xié)議)或WDP(WAP無線數(shù)據(jù)報(bào)協(xié)議)或GPRS(通用分組無線電業(yè)務(wù))或UMTS(通用移動(dòng)電信系統(tǒng))。
4.如權(quán)利要求1所述的系統(tǒng),其特征在于包括在至少一個(gè)所述客戶機(jī)上和在所述代理上的本地?cái)?shù)據(jù)庫,從而使所述客戶機(jī)和所述代理在斷開的情況下能夠存儲(chǔ)信息。
5.如權(quán)利要求4所述的系統(tǒng),其特征在于包括至少一個(gè)可插入數(shù)據(jù)庫適配器,它使所述客戶機(jī)和所述代理能夠使用任何數(shù)據(jù)庫產(chǎn)品。
6.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述客戶機(jī)是用JAVA程序設(shè)計(jì)語言來實(shí)現(xiàn)的。
7.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述客戶機(jī)是根據(jù)JMS(Java消息服務(wù))規(guī)范來實(shí)現(xiàn)的。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述代理被集成在JMS中間件中。
9.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述客戶機(jī)支持JMS發(fā)布/訂閱消息傳送模型。
10.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述客戶機(jī)支持JMS點(diǎn)到點(diǎn)消息傳送模型。
11.一種在運(yùn)行于移動(dòng)無線裝置上且充當(dāng)客戶機(jī)的第一應(yīng)用與運(yùn)行于計(jì)算機(jī)上的第二應(yīng)用之間傳遞信息的方法,所述計(jì)算機(jī)連接到有線計(jì)算機(jī)網(wǎng)絡(luò),所述方法包括如下步驟提供與面向消息的中間件(MOM)客戶機(jī)所用的程序設(shè)計(jì)庫的至少一部分對(duì)應(yīng)的程序設(shè)計(jì)庫以及具有實(shí)現(xiàn)與傳輸協(xié)議的接口的邏輯的傳輸協(xié)議適配器;在所述無線裝置上創(chuàng)建表示MOM程序設(shè)計(jì)庫中所含的主題和隊(duì)列中至少一個(gè)的代碼信息;將所述代碼信息發(fā)送到在與所述計(jì)算機(jī)網(wǎng)絡(luò)連接的計(jì)算機(jī)上實(shí)現(xiàn)的代理并且實(shí)現(xiàn)面向消息的中間件(MOM)客戶機(jī)的功能;同時(shí)或隨后將針對(duì)所述第一應(yīng)用的消息數(shù)據(jù)發(fā)送到所述代理;由所述代理創(chuàng)建所述代碼信息所指代的至少一個(gè)MOM命令;以及利用所述代碼信息所指代的MOM命令將所述消息數(shù)據(jù)轉(zhuǎn)發(fā)到所述第二應(yīng)用。
全文摘要
公開一種消息傳送代理系統(tǒng),用于通過任何無線網(wǎng)絡(luò)將便攜消息格式的數(shù)據(jù)通過中介代理計(jì)算機(jī)程序傳送此數(shù)據(jù)的方式、從運(yùn)行于移動(dòng)或非移動(dòng)計(jì)算機(jī)上的生成者傳送到運(yùn)行于移動(dòng)或非移動(dòng)計(jì)算機(jī)上的一個(gè)或多個(gè)接收者。該系統(tǒng)包括具有至少一個(gè)可插入傳輸協(xié)議適配器的消息代理計(jì)算機(jī)程序。該代理包括用于向移動(dòng)客戶機(jī)發(fā)送和從其接收命令令牌和消息令牌的命令子系統(tǒng)。該系統(tǒng)還包括運(yùn)行于移動(dòng)裝置上的薄消息傳送中間件客戶機(jī)。該薄消息傳送中間件客戶機(jī)包括至少一個(gè)可插入?yún)f(xié)議適配器。該客戶機(jī)還包括用于向代理發(fā)送和從其接收命令令牌和消息令牌的命令子系統(tǒng)。該代理還包括用于通過現(xiàn)有技術(shù)水平的面向消息的中間件發(fā)送和接收消息的通信子系統(tǒng)。
文檔編號(hào)H04L29/08GK1671144SQ20051006375
公開日2005年9月21日 申請(qǐng)日期2001年6月20日 優(yōu)先權(quán)日2000年7月7日
發(fā)明者S·馬費(fèi)斯 申請(qǐng)人:軟線股份公司