監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 甲方項(xiàng)目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉

Web Services和J2EE:集成中的伙伴

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

AMTeam.org

Web Services和J2EE:集成中的伙伴

長期以來,對(duì)于如何集成遺留的系統(tǒng)一直并存著多種解決方案。Web服務(wù)的出現(xiàn)為如何利用已存在的EAI(企業(yè)應(yīng)用集成)投資帶來了曙光。Web服務(wù)可以將后端應(yīng)用和數(shù)據(jù)改造成為一種簡單、可重用和長生命周期的服務(wù),通過Web服務(wù),后端的應(yīng)用和數(shù)據(jù)走向了前臺(tái)。

過去,以EAI集成應(yīng)用時(shí)程序員不得不編寫專用的連接程序來實(shí)現(xiàn)應(yīng)用A和應(yīng)用B的互通。但是,如果有第三方應(yīng)用C需要與A、B實(shí)現(xiàn)集成時(shí),程序員們必須在應(yīng)用A與應(yīng)用C之間以及應(yīng)用B與應(yīng)用C之間開發(fā)新的連接程序。這樣,隨著需要集成的應(yīng)用的增多整個(gè)集成將成為一張?jiān)絹碓綇?fù)雜的集成網(wǎng)絡(luò),因?yàn)槲覀冃枰谌我鈨蓚€(gè)應(yīng)用之間開發(fā)專用的連接程序。

在一些企業(yè)里,采用集成代理的方法可以緩解諸如EAI所帶來的負(fù)擔(dān)。所有的集成提供者都認(rèn)為采用一種依賴于私有協(xié)議的中間件作為應(yīng)用之間通信的代理是非常好的一個(gè)想法。這樣,每個(gè)應(yīng)用之間只需要一個(gè)單獨(dú)的連接器即可,應(yīng)用之間的映射關(guān)系則由代理來解決。這種集中輻射式技術(shù)最大的缺點(diǎn)就是其缺少可移植性。一旦選中了一種集成代理,那么將意味著集成中的所有的設(shè)計(jì)都不得不一直以這種集成代理作為基礎(chǔ)。

解決上面所提到的兩個(gè)問題的一個(gè)明顯的答案就是開發(fā)出一種能夠?qū)崿F(xiàn)系統(tǒng)松耦合從而實(shí)現(xiàn)更簡單應(yīng)用集成的標(biāo)準(zhǔn)。這個(gè)標(biāo)準(zhǔn)就是Web服務(wù)技術(shù)。為了使集成框架工作得更好,建立的標(biāo)準(zhǔn)必須涵蓋服務(wù)的通信、服務(wù)描述和服務(wù)發(fā)現(xiàn)等標(biāo)準(zhǔn)。通信的標(biāo)準(zhǔn)用來限定Web服務(wù)的通信方式;服務(wù)描述標(biāo)準(zhǔn)向用戶解釋一個(gè)服務(wù)到底具有哪些功能;服務(wù)發(fā)現(xiàn)標(biāo)準(zhǔn)告訴用戶如何尋找到一個(gè)Web服務(wù)并為服務(wù)提供商提供了一種發(fā)布其Web服務(wù)的一種方法。這三種功能標(biāo)準(zhǔn)分別由SOAP (Simple Object Access Protocol)、UDDI (Universal Description, Discovery and Integration) 和WSDL (Web Services Description Language)來實(shí)現(xiàn)。SOAP提供通信機(jī)制,WSDL負(fù)責(zé)服務(wù)的描述,UDDI則是發(fā)現(xiàn)服務(wù)的一種工具。

Web服務(wù)的工作方式如下:

首先,作為一個(gè)服務(wù)的制造商,公司將它的應(yīng)用想要公開的功能進(jìn)行標(biāo)記。

接下來,Web服務(wù)的服務(wù)器通過調(diào)用相應(yīng)的程序?qū)崿F(xiàn)對(duì)這些已標(biāo)記功能的包裝(Web服務(wù)的服務(wù)器通過Internet的HTTP協(xié)議和基于XML的SOAP文檔通信;SOAP是一種用來定義應(yīng)用間通信方式的協(xié)議)。

然后,公司將開發(fā)出一個(gè)WSDL文檔用來定義服務(wù)。WSDL也是一種基于XML的技術(shù),它是Web服務(wù)功能性描述的一種協(xié)議。各個(gè)服務(wù)的制造商們將它們的Web服務(wù)加入到UDDI的目錄列表中,這個(gè)目錄列表就象是Web服務(wù)的電話本一樣。

最后,Web服務(wù)的用戶通過查詢UDDI目錄中的服務(wù)來找到自己需要調(diào)用的遠(yuǎn)程應(yīng)用。UDDI為用戶返回一個(gè)WSDL文檔,通過這個(gè)文檔用戶就可以通過某種工具的幫助創(chuàng)建自己的客戶端應(yīng)用。這個(gè)客戶端調(diào)用服務(wù)的過程與通過HTTP協(xié)議調(diào)用SOAP文本的過程沒有區(qū)別。

通過上面的介紹可以看出,Web服務(wù)是一種大量依靠XML的技術(shù),這是因?yàn)閄ML技術(shù)已經(jīng)被大部分流行的編程語言所支持。Web服務(wù)的這種跨平臺(tái)和跨語言特性可以滿足任意兩個(gè)應(yīng)用之間的通信需要。

舉個(gè)例子。假設(shè)有一個(gè)后端的COBOL應(yīng)用正在通過5270端口與一個(gè)運(yùn)行在基于Windows的Java應(yīng)用服務(wù)器上的應(yīng)用共享信息。共享的信息可能顯示在一個(gè)iMac上的Opera瀏覽器中或者顯示在Nokia手機(jī)的顯示屏上。通過Web服務(wù),你就可以以這種方式共享任何信息和應(yīng)用的功能。

Java應(yīng)用服務(wù)器和Web服務(wù)

既然標(biāo)準(zhǔn)已經(jīng)存在了,隨之而來的就是那些越來越多的對(duì)服務(wù)器的需求。這些服務(wù)器是能夠代理Web服務(wù)處理任務(wù)的一類服務(wù)器。所以,應(yīng)用服務(wù)器的提供商們開始在他們的商品中提供對(duì)Web服務(wù)的支持。因?yàn)榇蠖鄶?shù)的企業(yè)已經(jīng)采用應(yīng)用服務(wù)器來建立它們的Web使能應(yīng)用,所以應(yīng)用服務(wù)器就理所當(dāng)然的成為了Web服務(wù)的服務(wù)器。

目前的應(yīng)用服務(wù)器市場已經(jīng)證明了Sun公司的J2EE (Java 2 Enterprise Edition)規(guī)范的成功。J2EE平臺(tái)不僅是一種技術(shù)成熟的平臺(tái)而且比它的對(duì)手Microsoft的.NET平臺(tái)更好地支持工業(yè)的標(biāo)準(zhǔn)。

J2EE應(yīng)用服務(wù)器提供了一種跨供應(yīng)商的標(biāo)準(zhǔn),這樣用戶就可以容易地將他們的J2EE應(yīng)用從一個(gè)供應(yīng)商的J2EE應(yīng)用服務(wù)器移植到另外一個(gè)供應(yīng)商的J2EE應(yīng)用服務(wù)器上。已經(jīng)證明,只需要非常小的修改或者根本不修改,J2EE應(yīng)用就可以運(yùn)行在許多不同的操作系統(tǒng)上并與Web瀏覽器集成。Java和J2EE平臺(tái)為EAI解決方案帶來了可移植性。任何投資都會(huì)帶來風(fēng)險(xiǎn),而運(yùn)行在J2EE平臺(tái)上的Web服務(wù)則可以最小化這些風(fēng)險(xiǎn)并為采用這種方案的集成商們帶來可觀的回報(bào)。

與其它的底層組件相比,J2EE的功能要更加復(fù)雜并且容易混淆。以J2EE作為應(yīng)用服務(wù)器的統(tǒng)一模式將造成性能的降低,例如,與企業(yè)后臺(tái)應(yīng)用的不兼容。

另外,J2EE規(guī)范的1.3版增加了更易于移植和重用的Java集成工具——JCA (Java Connector Architecture)。該工具為開發(fā)人員提供了一種開發(fā)或者購買可嵌入的Java連接器的標(biāo)準(zhǔn),該連接器通過將遺留的系統(tǒng)集成到Java應(yīng)用服務(wù)器上來實(shí)現(xiàn)遺留數(shù)據(jù)基于Internet或Intranet的共享。

為了更好的支持Web服務(wù)的部署,許多Java應(yīng)用服務(wù)器現(xiàn)在都包含必要的工具來幫助應(yīng)用開發(fā)人員通過UDDI路徑發(fā)現(xiàn)Web服務(wù)。一旦該路徑返回了WSDL的文檔,這個(gè)工具就能夠生成訪問該Web服務(wù)的客戶端的基本代碼。然后,這些工具通過SOAP協(xié)議建立和共享Web服務(wù)并將Web服務(wù)注冊(cè)到UDDI注冊(cè)表。

采用Web服務(wù)的風(fēng)險(xiǎn)

今天我們已經(jīng)建立了一系列的Web服務(wù)標(biāo)準(zhǔn),應(yīng)用服務(wù)器的供應(yīng)商們也正在將這些標(biāo)準(zhǔn)融入到他們的產(chǎn)品中。我們也擁有一個(gè)支撐Web服務(wù)開發(fā)的正在趨于完美的平臺(tái)——J2EE。那么,我們?yōu)槭裁催€要限制開發(fā)人員都來采用Web服務(wù)作為集成的解決方案呢?

采用Web服務(wù)的體系框架給人們帶來了兩個(gè)方面的困惑和恐懼:

1.Web服務(wù)是一種前沿的技術(shù),它的支撐軟件還不夠成熟。

2.各種各樣的新規(guī)范誕生的非???,人們需要投入大量的資金來緊跟和測(cè)試這些新的規(guī)范。

對(duì)于上面的第2點(diǎn)來說,盡管新的規(guī)范必須兼容早期的版本并且由多個(gè)團(tuán)體共同制定,但是,隨著技術(shù)的逐漸成熟,規(guī)范修改的內(nèi)容和次數(shù)也會(huì)越來越少(例如HTTP)。

對(duì)于上面的第1點(diǎn)來說, J2EE已經(jīng)是一種相對(duì)成熟的技術(shù),而Web服務(wù)市場的激烈競爭也很快為Web服務(wù)的開發(fā)人員確定了一批優(yōu)秀的開發(fā)工具。

Web服務(wù)的回報(bào)

采用Web服務(wù)和J2EE來集成遺留的系統(tǒng),其潛在的回報(bào)是巨大的。你可以充分使用集成服務(wù)器所帶來的優(yōu)點(diǎn)而不需要考慮其它集成系統(tǒng)所存在的一個(gè)很大的不足:缺少可移植性。如果一個(gè)集成方案是在某個(gè)Web服務(wù)提供商的J2EE和Web服務(wù)平臺(tái)所建立的,那么它的應(yīng)用可以非常容易地移植到其它供應(yīng)商的服務(wù)器上。

另外,無論是已經(jīng)擁有的應(yīng)用服務(wù)器還是準(zhǔn)備在一個(gè)電子商務(wù)項(xiàng)目中購買的應(yīng)用服務(wù)器都可以較為經(jīng)濟(jì)的享有Web服務(wù)和J2EE所提供的集成所帶來的一切優(yōu)點(diǎn)。通過這個(gè)集成服務(wù)器,用戶只需要針對(duì)每一個(gè)應(yīng)用建立一個(gè)連接,而不需要為任意兩個(gè)應(yīng)用的每個(gè)聯(lián)系建立連接。Web服務(wù)和J2EE是建立在一些容易理解的技術(shù)(例如,Java 和 XML)基礎(chǔ)之上的,在過去的幾年里這些技術(shù)已經(jīng)贏得了大量的支持和使用。所以,基于Web服務(wù)和J2EE的集成解決方案就成為一種不斷發(fā)展、功能不斷增強(qiáng)的方案,這是其帶來的另一個(gè)好處。

最后,隨著基于標(biāo)準(zhǔn)的開發(fā)工具的不斷完善,這些工具將大大提高用戶的生產(chǎn)能力,它將使用戶通過圖形操作界面和簡單的點(diǎn)擊、拖拉操作在短短的幾個(gè)小時(shí)內(nèi)建立應(yīng)用的連接。

總結(jié)

通過簡化和利用現(xiàn)有的技術(shù)和知識(shí),Web 服務(wù)和J2EE能夠減少遺留系統(tǒng)集成的必要投資,提供可移植性和可重用性。通過使用一系列單一的標(biāo)準(zhǔn)技術(shù)——XML, Java 和 Web 服務(wù)——集成項(xiàng)目的周期將會(huì)大大的縮短。同時(shí),由于所采用的技術(shù)是標(biāo)準(zhǔn)的,所以集成方案的透明化也就變得可能了。

通過實(shí)施基于Web服務(wù)和J2EE的集成方案,IT的管理者們可以降低他們的投資成本,縮短項(xiàng)目周期和擴(kuò)展項(xiàng)目的應(yīng)用。不容置疑,今天Web服務(wù)已經(jīng)引起了開發(fā)人員和集成人員的注意,并為之興奮。

發(fā)布:2007-03-25 10:36    編輯:泛普軟件 · xiaona    [打印此頁]    [關(guān)閉]
相關(guān)文章:
上海OA系統(tǒng)
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費(fèi)獲取試用系統(tǒng)

QQ在線咨詢