當(dāng)前位置:工程項目OA系統(tǒng) > 泛普各地 > 上海OA系統(tǒng) > 上海OA快博
J2EE和.Net:能共處嗎?
J2EE和.Net:能共處嗎?
在企業(yè)IT領(lǐng)域,開發(fā)Web服務(wù)的重要性已經(jīng)越來越明顯了,正因為Web服務(wù)的出現(xiàn),企業(yè)數(shù)據(jù)和企業(yè)運行的流程通過遠(yuǎn)程訪問的方式渾然一體。就Web服務(wù)來說,有些人可能會把Sun公司開發(fā)的Java 2、Enterprise Edition (J2EE)和微軟公司開發(fā)的.NET技術(shù)視作相互排斥的Web服務(wù)解決方案,但是Noel Clarke,這位SilverStream軟件公司的高級電子商務(wù)戰(zhàn)略專家卻不這樣想。他認(rèn)為,以上的三種Web服務(wù)技術(shù)完全可以共存。在今年3月JavaOne開發(fā)者大會的一次技術(shù)座談會上(TS-3154),Clarke從交付和消費Web服務(wù)的角度對各類技術(shù)進行了正反面的評述。
電子商務(wù)悖論
產(chǎn)生Web服務(wù)的用戶需求是什么?Clarke指出,Web服務(wù)的出現(xiàn)主要是由所謂的“電子商務(wù)悖論”這一現(xiàn)實狀況所產(chǎn)生的。他說:“因電子商務(wù)而引發(fā)的巨大變革反而阻礙了電子商務(wù)贏得成功。只有當(dāng)我們有能力動態(tài)地、快速地在我們企業(yè)內(nèi)部乃至企業(yè)之間實現(xiàn)互操作,網(wǎng)絡(luò)商務(wù)給我們帶來的美好希望才會最終得以實現(xiàn)?!?/FONT>
為了實現(xiàn)這種綜合性的集成,我們就必須實現(xiàn)商業(yè)功能的方便共享,同時能以一種靈活的處理流程把這些功能聯(lián)系在一起,能以適當(dāng)數(shù)據(jù)格式(適應(yīng)多樣的客戶設(shè)備)交付這些功能,而且要讓商業(yè)功能可以在任何地方都能被人找到。
SOAP、WSDL和UDDI之三位一體
真正的Web服務(wù)能提供商務(wù)工作的可重用單元和對商務(wù)數(shù)據(jù)的訪問手段。Web服務(wù)并不關(guān)心數(shù)據(jù)的表達,它們能被API或GUI調(diào)用。結(jié)果,獲取服務(wù)的消費者可以采取任何需要的形式來顯示W(wǎng)eb服務(wù)的結(jié)果,不管是HTML、Swing、WML、HDML還是XML等等。到最后,服務(wù)用到的協(xié)議和數(shù)據(jù)表示方式不僅無所不在而且具有強烈的因特網(wǎng)親和性。
用XML、SOAP、WSDL和UDDI提供Web服務(wù)
目前訪問Web服務(wù)的基礎(chǔ)結(jié)構(gòu)由SOAP(簡單對象訪問協(xié)議)、WSDL(Web服務(wù)描述語言)和UDDI(通用描述、發(fā)現(xiàn)和集成)構(gòu)成。Clarke說:“我們?yōu)檫@些服務(wù)構(gòu)造XML前端,然后獲取XML信息并且用WSDL來描述它,之后再用SOAP消息包裝這些信息。一旦造就了SOAP消息就可以從任何平臺調(diào)用它,所使用的技術(shù)也不少——Perl、Python、Java、.NET等等都可以做到。然后我們就可以在UDDI注冊表中發(fā)布這些WSDL定義,這樣我們的顧客和合作伙伴就可以使用這些商務(wù)過程了?!?/FONT>
.NET
提到Web服務(wù)的時候,許多人把J2EE和.NET這兩大技術(shù)陣營之間的爭斗視作了另一番可樂之戰(zhàn)。Clarke說:“有些人認(rèn)為這就象口味偏好一樣,你必須在兩者之間做出選擇。但是,我們相信Web服務(wù)確實是可以共存的。而且我們相信這種共存關(guān)系正是實現(xiàn)Web服務(wù)互操作的關(guān)鍵所在?!?/FONT>
Clarke接下來對.NET架構(gòu)的基本組成單元進行了詳細(xì)說明:
“智能的”客戶軟件應(yīng)用程序使PC和其他類型的設(shè)備能夠作用于XML Web服務(wù)
XML
Web服務(wù)由那些能相互連結(jié)起來的小型可重用組件應(yīng)用程序所組成
.NET服務(wù)器負(fù)責(zé)發(fā)布、管理和編制XML Web服務(wù)
開發(fā)工具——包括Visual Studio .NET和.NET Framework等,正是它們建立、部署和運行XML Web服務(wù)
.NET為其支持的所有語言提供了單一的開發(fā)環(huán)境,這些編程語言包括Visual Basic ( VB
)、C++以及最新推出的C#等。C#有語言從構(gòu)造上說類似Java語言,而且同樣包括了垃圾收集等功能。Clarke就此評價說:“在這個領(lǐng)域里的很多人肯定會驚詫地說,嗨,那玩意兒不就是Java嗎?哪年頭就有了!”
.NET環(huán)境可以讓開發(fā)者輕松地把應(yīng)用程序開發(fā)為Web服務(wù)。然后開發(fā)者們可以方便地把Web服務(wù)歸并到更大型的應(yīng)用程序中來,最后就可以從任何運行Web服務(wù)棧的平臺調(diào)用Web服務(wù)了。同時,.NET My Services則把傳統(tǒng)的微軟客戶應(yīng)用程序,比如錢包、收件箱、日歷和優(yōu)選設(shè)置等等分解成為各種單一的Web服務(wù)。
用VB、C++以及C#編寫的應(yīng)用程序都采用.NET之下的同類系統(tǒng)庫,而且它們會被首先編譯為MSIL(微軟中介語言)這種偽代碼,之后才被公共語言運行時( CLR )在執(zhí)行的時候解釋。Clarke指出:“這一切同Java語言的字節(jié)碼和虛擬機非常相似。”
J2EE
J2EE是基于Java技術(shù)的一整套企業(yè)應(yīng)用開發(fā)標(biāo)準(zhǔn)和規(guī)范以及同硬件無關(guān)的運行時環(huán)境。J2EE能夠為開發(fā)的產(chǎn)品帶來顯著的可移植性、可伸縮性、穩(wěn)定性、安全和可管理性。Clarke說:“這種平臺的一個重要方面就是它已經(jīng)問世大約5年左右了,而且在多種硬件平臺具有了各類實現(xiàn),相比微軟
( .NET ),后者目前只有一種CLR,而且還是剛剛實現(xiàn)的一種?!?/FONT>
J2EE平臺是Java Community Process (JCP)開發(fā)的,這是一個由許多主流技術(shù)公司組織的標(biāo)準(zhǔn)體。作為產(chǎn)業(yè)開發(fā)的結(jié)果,供應(yīng)商們針對J2EE開發(fā)了大量的Web服務(wù)工具,比如Sun的Forte for Java (FFJ)、Eclipse(由IBM推出的一種公開源代碼的開發(fā)工具)、Borland的Jbuilder以及Silverstream的eXtend產(chǎn)品線等。同時,Systinet公司提供了可插入Forte、Jbuilder和Eclipse的一套工具,從而為這些產(chǎn)品帶來了額外的Web服務(wù)功能。Clarke說:“并不只有微軟樂意演這場戲,整個陣營內(nèi)的公司們團結(jié)在一起造就了這些Java規(guī)范、標(biāo)準(zhǔn)和工具。”
Java Community Process還逐步開發(fā)出了很多同Web服務(wù)有關(guān)的前端應(yīng)用,其中包括大量適合XML處理的JSR(Java規(guī)范請求)。這些性能突出的API將在JDK 1.4或1.5版本中發(fā)布:
JSR-031 -- Java API for XML Binding (JAXB)
JSR-067 -- Java
APIs for XML Messaging 1.0 (JAXM)
JSR-093 -- Java API for XML Registries 1.0
(JAXR)
JSR-101 -- Java API for XML-based RPC (JAX-RPC)
JSR-109 --
Implementing Enterprise Web Services
JSR-110 -- Java APIs for WSDL
JSR-111 -- Java Services Framework
JSR-155 -- Web Services Security
Assertions
JSR-156 -- XML Transactioning API for Java (JAXTX)
JSR-159 --
Java Process Component API (JPC)
前路漫漫
要有效地構(gòu)造面向服務(wù)的應(yīng)用程序就必須實現(xiàn)XML集成、舊應(yīng)用連接、業(yè)務(wù)過程管理、UDDI注冊表、內(nèi)容管理、個性化、業(yè)務(wù)邏輯以及前端開發(fā)等應(yīng)用目標(biāo)。Clarke 指出:“這是個相當(dāng)復(fù)雜的過程?!?/FONT>
由于任務(wù)的復(fù)雜性,技術(shù)設(shè)計師們又在設(shè)想一種稱為ISE(綜合服務(wù)環(huán)境)的新一類產(chǎn)品。ISE通過提供設(shè)計環(huán)境、運行時可執(zhí)行文件和部署平臺等措施把Web服務(wù)開發(fā)的復(fù)雜性降低到商務(wù)應(yīng)用程序開發(fā)的水準(zhǔn),從而為平臺供應(yīng)商、框架供應(yīng)商以及IDE/工具包開發(fā)商提供了綜合集成的可能。
在Web服務(wù)開發(fā)不斷發(fā)展的同時,大量技術(shù)公司創(chuàng)造的革新和產(chǎn)品在推廣Web服務(wù)方面具有重要意義,甚至可與Java平臺規(guī)范以及JCP的作用相媲美。
這種全行業(yè)的共同參與在安全和身份識別領(lǐng)域更顯得彌足珍貴。在Web服務(wù)的世界里,所謂的身份就是指電話號碼、通信地址、信用卡號等個人的信息。
.NET技術(shù)體系下的身份架構(gòu)叫作Passport(護照),Passport在微軟服務(wù)器上存儲個人信息。Clarke說:“微軟把Passport視為一個顯著的優(yōu)點,但是,由于這一技術(shù)存在各種各樣的漏洞,以至于采用Hotmail和腳本就可以獲得人們的信用卡號。”
Liberty Alliance Project是一個由超過30家商業(yè)公司組成的合作組織,其職責(zé)就是為Java平臺實現(xiàn)開放和聯(lián)合的網(wǎng)絡(luò)身份解決方案。該組織管理層的成員代表了超過十億的客戶,其中包括:美國運通、AOL時代華納、加拿大貝爾、Citigroup、法國電信、通用汽車、環(huán)球電訊、惠普公司、國際萬事達卡、諾基亞、美聯(lián)航以及Vodafone等大公司。該組織堅持的原則是,用戶帳號信息必須掌握在當(dāng)前擁有其信息的單位手中,由用戶管理帳戶信息而非一個中央機構(gòu)來完成這一職能,而且用戶有權(quán)選擇由那些機構(gòu)來安全地共享其身份信息。
共同點
目前已經(jīng)出現(xiàn)了可以把Java語言編譯為微軟中介語言或者反其道而行之的多類編譯項目。
同時,沒有任何辦法能阻止J2EE的開發(fā)人員利用那些由.NET所開發(fā)的Web服務(wù)。原因是Web服務(wù)是建立在標(biāo)準(zhǔn)基礎(chǔ)之上的。事實上,Clarke就演示了這兩種技術(shù)之間互操作性:從從Java客戶程序調(diào)用.Net生成的Web服務(wù)。
建議
在提到向客戶推薦采用J2EE或.NET構(gòu)造Web服務(wù)時,Clarke的建議是充分利用兩種技術(shù)的優(yōu)點。
Microsoft/.NET從歷史上看主要占據(jù)PC桌面GUI和操作系統(tǒng)領(lǐng)域,其目標(biāo)定位是小型企業(yè)、家庭辦公和企業(yè)桌面用戶。但是在其平臺上,高水平的開發(fā)人員從人數(shù)來說還是相對較少。另外,Clarke認(rèn)為,.NET還不能算作真正意義的企業(yè)類架構(gòu),而且它完全鎖定在微軟產(chǎn)品的范圍之內(nèi)。也許最重要的是,為了跟上新技術(shù)的潮流,微軟一直以技術(shù)取向的激進態(tài)度為人所知。Clarke認(rèn)為:“這可能會產(chǎn)生問題,有時會令你陷入困境。”
另一方面,J2EE 平臺建立在基于命令行的UNIX基礎(chǔ)之上,其定位是開發(fā)人員,而且在大型企業(yè)系統(tǒng)市場有強大的用戶基礎(chǔ)。這種平臺的高水平開發(fā)者數(shù)量是相當(dāng)大的。同時,J2EE 早就由JCP開發(fā)出來,而且已經(jīng)得到了主要技術(shù)公司的實現(xiàn)。此外,它還實現(xiàn)了真正的跨平臺兼容性。但是,由于J2EE是基于標(biāo)準(zhǔn)的平臺,而且是由各階段產(chǎn)業(yè)參與者共同發(fā)展的結(jié)果,所以這也意味著這種技術(shù)的深化和精煉需要時間。作為一種補救措施,J2EE的工具供應(yīng)商已經(jīng)聯(lián)合起來開發(fā)更具革新意義和競爭力的新產(chǎn)品,其規(guī)范趨于更完備而且更穩(wěn)固。
總而言之,Clarke建議,在已經(jīng)使用了微軟技術(shù)的場合不妨采用.NET技術(shù)構(gòu)造具有中小級信息量和過程資源的Web服務(wù),把基本的Web服務(wù)匯集到功能性的應(yīng)用程序中來,而且為利用Web服務(wù)創(chuàng)建特定的Windows客戶應(yīng)用程序。他還建議,采用J2EE的場合主要有:構(gòu)造和發(fā)布大型企業(yè)的Web服務(wù),在服務(wù)器端匯集Web服務(wù),創(chuàng)建客戶應(yīng)用程序(JFC/Swing)消費Web服務(wù),以及需要平臺無關(guān)性的因特網(wǎng)和外聯(lián)網(wǎng)Web服務(wù)客戶程序等。
- 1Java Web Services的遠(yuǎn)端調(diào)用
- 2e-Learing不是上海OA?
- 3上海OA不管知識(孫洪波)
- 4上海OA的本質(zhì)及其平衡性分析
- 5信息生命周期管理:存儲界的最新發(fā)展浪潮
- 6麥肯錫電子商務(wù)論叢-網(wǎng)絡(luò)社群的價值所在
- 7分階段實施信息生命周期管理(朗飛 )
- 8GIS應(yīng)用模式的革命
- 9鋼鐵行業(yè)電子商務(wù)各具特色
- 10《解構(gòu)Web services系列之一》運算技術(shù)新潮流:Web services
- 11泛普(上海)OA辦公軟件2014年中期率先發(fā)布基礎(chǔ)功能模塊
- 12善用你的知識財產(chǎn)
- 13昔日被拒門外 Sun現(xiàn)要進入WS-I決策部門
- 14J2EE和.Net:能共處嗎?
- 15跨越信息訪問的鴻溝!(by AMT 方厚政)
- 16Web服務(wù)中的信息安全:軟肋 or 機會?
- 17全文檢索技術(shù)的深層剖析
- 18RDF介紹
- 19基于Web的工作流管理系統(tǒng)的設(shè)計與實現(xiàn)
- 20知識未被視為有價值的資產(chǎn)
- 21基于Web服務(wù)的移動支付規(guī)范發(fā)表
- 22PKM:個人上海OA
- 23信息流動性:新價值的源泉
- 24中國企業(yè)距離知識經(jīng)濟有多遠(yuǎn)?(by 胡克)
- 25實施上海OA:把經(jīng)驗和信息轉(zhuǎn)化為生產(chǎn)力(by AMT 仲英豪編譯)
- 26架起結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù)之間的橋梁(AMT 唐曉輝 編譯)
- 27企業(yè)知識門戶的IT實現(xiàn)
- 28如何在存儲管理中最大限度發(fā)揮ROI?(by AMT 張艷編譯)
- 29泛普OA協(xié)同軟件通過精細(xì)化管理,實現(xiàn)施工行業(yè)精細(xì)化合同管理
- 30信息系統(tǒng)建設(shè)提供的是知識還是產(chǎn)品?(AMT 宋亮)
成都公司:成都市成華區(qū)建設(shè)南路160號1層9號
重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓
版權(quán)所有:泛普軟件 渝ICP備14008431號-2 渝公網(wǎng)安備50011202501700號 咨詢電話:400-8352-114