JCA: Java步入應(yīng)用集成時代(作者:不詳) ![]() 要支持JCA的事務(wù)和安全功能需要目標程序通過資源適配器為程序的訪問暴露足夠的事務(wù)和安全界面.過時的應(yīng)用程序或者是應(yīng)用程序平臺如果不經(jīng)過加強則有可能只能部分的符合JCA標準. 許多的適配軟件很可能只能支持最小的"無事務(wù)"選項而且可能只能擁有一個部分支持目標環(huán)境的安全結(jié)構(gòu)的安全界面. 最小化的資源適配器也許只能改進那些在JCA出現(xiàn)以前由不同的銷售商開發(fā)的非標準適配器.在目前的開發(fā)階段,JCA與更現(xiàn)代的和更開放的目標應(yīng)用程序或環(huán)境結(jié)合的時候最能體會它的威力.到2004年,在軟件集成項目中少于百分之三十的軟件包和遺留下來的適配軟件將使用JCA, 而且擁有完全功能的將少于百分之十--包括對事務(wù)的支持,完全的安全性,以及CCI(0.7 的可能性). 資源適配器用系統(tǒng)界面來與底層的J2EE應(yīng)用服務(wù)器交互.資源適配器通過JCA系統(tǒng)界面將繁雜的細節(jié)處理過程交給底層的應(yīng)用服務(wù)器,從而滿足可伸縮性,集成性,和安全性方面的要求,上層的應(yīng)用程序假設(shè)底層的應(yīng)用服務(wù)器知道如何處理對JCA系統(tǒng)界面調(diào)用.因此,應(yīng)用服務(wù)器銷售商聲明支持JCA,其本身并不保證能夠提供對應(yīng)用程序集成的支持除非銷售商還提供(通過合作或是獨立開發(fā))預(yù)先開發(fā)的JCA資源適配器. JCA 通用客戶界面是調(diào)用程序(用戶程序或是集成中間件)使用的一套應(yīng)用編程界面(API).JCA CCI被用做對資源適配器的標準訪問過程,不管實際的目標程序或是環(huán)境是如何工作的.因為所有的資源適配器支持相同的一套AIP,所有的調(diào)用程序和外界程序間的交互過程就形成了標準.但是對CCI支持在JCA 1.0中是可遷的.許多的資源適配器會暴露非標準的但是滿足特定目標或平臺訪問方式的客戶界面. CCI與企業(yè)版JavaBeans(EJB)的調(diào)用界面是不同的,而且JCA 資源適配器的封裝方式也不盡相同;JCA的Java編譯文件(JAR)與EJB JAR文件有不同的設(shè)計方式.所以CCI代表了J2EE范圍內(nèi)一個新的專門的編程模型;它是復(fù)雜的而且需要專門的技術(shù)知識.但是實際使用CCI的開發(fā)者的大部分很可能將是工具軟件銷售商(例如WebGain和IBM Visual Age)以及集成中間件生產(chǎn)商(例如WebMethods和TIBCO Software),而不是企業(yè)應(yīng)用開發(fā)者. 要支持JCA, 集成中間件銷售商一般不得不采用一整套J2EE平臺,就象JCA設(shè)計需要的那樣(也就是"managed"選項).但它們中的大多數(shù)還沒有這樣的能力,所以可能只是實現(xiàn)JCA標準的功能弱一些的"unmanaged"選項.這種情況很可能拖延集成中間件銷售商對JCA全部標準的采用,因而也就會拖延對整個JCA的采用.到2004年,所有主導(dǎo)的集成中間件銷售商都將通過獨立開發(fā)或是合作在它們的產(chǎn)品里捆綁進一個J2EE應(yīng)用服務(wù)器(0.7的可能性). JCA 對 Web服務(wù)(Web services) 資源適配器的代碼是復(fù)雜的,需要對目標平臺內(nèi)部結(jié)構(gòu)的深刻了解和程序設(shè)計方面高級的知識.因此,外部應(yīng)用程序(而不是調(diào)用程序的開發(fā)者)銷售商將開發(fā)大部分的資源適配器.所以,套裝軟件銷售商和運行環(huán)境銷售商對它的采用程度將決定整個工業(yè)對JCA的接受程序.目前,很少有銷售商已經(jīng)開始(并己決定了發(fā)布時間)致力于為它們的程序提供JCA資源適配器.雖然我們可以預(yù)見在未來的六個月內(nèi)還會有類似的宣稱出現(xiàn),但是銷售商必須決定是否支持JCA或者Web服務(wù)描述語言(WSDL)作為它們標準的外部訪問界面. JCA在功能上比Web服務(wù)要豐富,但是它發(fā)布起來更難而且限制了銷售商只能從Java環(huán)境訪問它們.Web服務(wù)界面能夠自動的包括對Java,微軟,和其它結(jié)構(gòu)的支持.一個可能的折衷是銷售商同時提供對JCA和Web服務(wù)界面的支持,也許使用Web服務(wù)來打包JCA CCI.在未來的版本里,JCA很可能擴展它對XML和松偶合訪問的支持.未來的JCA版本還可能提供對CCI和Web服務(wù)的標準化的支持.因此,JCA將為對JCA資源適配器的緊耦合(JCA)和松耦合提供協(xié)議. 未來對適配器的改進要求 JCA要求資源適配器運行在J2EE容器里;非Java目標程序的本地適配器是不被支持的.通常,將適配器和目標應(yīng)用程序放在一起能夠提高集成度和事務(wù)交換的能力.要達到這個目的,用戶將不得不走到標準的前面去.開發(fā)一個外部的非JCA適配器然后為它開發(fā)一個JCA包容器是可能的.但是這種分布的適配器將不那么好管理而且不太可能實現(xiàn)JCA標準的完整功能. JCA標準沒有解決一個資源適配器是應(yīng)該總是代表整個目標環(huán)境(3270 CICS)還是代表一個或多個外部程序的功能(例如這樣的功能,"從一個3270 CICS 應(yīng)用程序獲取客戶信息").復(fù)合資源適配器--那些為幾個外部環(huán)境(例如AS/400和R/3)--則連提都沒有提到.當(dāng)前的應(yīng)用集成的實際顯示一個適配器的功能范圍可以是"瘦"或者含有很多的技術(shù)而在商業(yè)邏輯方面變得"胖"而笨重.對大多數(shù)集成項目來說關(guān)鍵性的異步集成方式也沒有出現(xiàn)在JCA 1.0里. 當(dāng)實際采用JCA的時候這些問題就會出現(xiàn)而且有可能需要在JCA未來的版本里做進一步的擴展和明確.制定JCA 2.0的工作已經(jīng)開始. 應(yīng)用集成更大的一幅畫面 JCA的范圍被限制在適配器技術(shù)里,這相對于整個應(yīng)用集成平臺來說是一個小部分.許多應(yīng)用集成的需求和方案還沒有包括在J2EE里.它不支持語義數(shù)據(jù)傳輸,業(yè)務(wù)進程管理,異步集成(JCA 的目標只有請求/應(yīng)答 式的適配器風(fēng)格),消息倉庫和集成系統(tǒng)管理.JCA完全面向?qū)ν綇?fù)合應(yīng)用的支持,支異步應(yīng)用程序集成視而不見.要滿足這些要求,到2004年附加的與集成有關(guān)的標準將被添加進J2EE(0.8的可能性). 總結(jié) JCA是對J2EE顯著的擴展,但它沒有能夠適應(yīng)所有應(yīng)用集成項目的需求. 不管JCA如何,J2EE的用戶在建立它們的集成內(nèi)構(gòu)的時候?qū)⒗^續(xù)部分的依賴專有解決方案. |
|