解讀Java與.NET間進行Web Service交互的選擇_.Net教程
推薦:解讀.NET中*延遲*特性的幾個陷阱.NET發(fā)展至今,其實各處都有
談到.NET和Java之間的Web服務交互性時,通常的選擇只有SOAP over HTTP,而根據(jù).NET 3.0的相關規(guī)范,這僅有的一個選擇也將會受到更多限制,.NET中提供的BasicHTTP將是唯一能直接與Java Web Servcies進行交互的方式。
最近,有兩個新的選擇出現(xiàn)了——WebSphere MQ(WMQ)和ActiveMQ傳送器,它們可以用于創(chuàng)建Java和.NET之間的交互式Web Services。而且.NET的可靠消息系統(tǒng)已經(jīng)得到了擴展,因此對于MSMQ來說,WMQ和Active MQ都可以作為.NET Web Services的可靠傳遞者。
WMQ解決方案基于IBM AlphaWorks中IBM WMQ for Windows Communication Foundation的定制通道(Custom Channel),它的最新版本已于3月14日發(fā)布。這一產(chǎn)品允許將WMQ作為定制通道用于Windows Communication Foundation(WCF)框架(已隨.NET Framework 3提供)中,它與微軟的內(nèi)建通道工作方式相同。
消息都是經(jīng)過格式化的,以滿足WMQ v6.0的SOAP over JMS實現(xiàn),讓應用程序即可以和運行于WCF之上的服務進行通信,也能和運行在WebSphere SOAP over JMS服務基礎之上的服務進行通信,包括WebSphere應用服務器和CICS。
目前的實現(xiàn)是以概念驗證為主,是為了幫助更好地理解對這一領域產(chǎn)品的需求(也就是說它并不適合在產(chǎn)品環(huán)境中使用),如何產(chǎn)品化這一實現(xiàn)的計劃還沒有最終確定。
定制通道的構建是通過Windows Communication Foundation的可擴展框架提供的,這一可擴展框架允許集成和使用那些與微軟提供的內(nèi)建傳送器類似的傳送器。服務型應用只要通過配置就可以使用新的定制通道,只要客戶端應用程序是通過像微軟的Service Metadata utility Tool(Svcutil.exe)這樣的標準工具生成的,它們就可以正常運行。服務的元數(shù)據(jù)描述可以被正在運行的服務直接發(fā)布(可以通過一個附加的HTTP端點來暴露)或者使用WSDL(Web Service Description Language)。
目前的實現(xiàn)版本支持核心的消息功能,它有如下限制:
對于一個服務實例,只有一個客戶端可以使用雙向通道的模式;
雙向通道是對WebSphere MQ v6所提供的SOAP/JMS實現(xiàn)的一種擴展,它只能用于WCF服務與其客戶端之間的通信;
僅支持核心的消息功能(如不支持像事務化和安全等高級特性)
運行在現(xiàn)存WMQ v6的SOAP/JMS環(huán)境中的SOAP/JMS服務僅能進行單向操作;
運行在CICS或WebSphere應用服務器的SOAP/JMS環(huán)境內(nèi)的SOAP/JMS服務,不允許在一個單一合約中混合使用單向操作和請求/回復操作,而必須為每個通道形態(tài)分別創(chuàng)建獨立的合約。
Active MQ解決方案基于Axis提供的JMS(由Java編寫而成)和“插件式協(xié)議”特性(由.NET編寫而成),因此,它并不是以真正的.NET定制通道方式包裝的,這就需要更多的定制編程。
這兩種解決方案都沒有徹底的產(chǎn)品化,但它們卻提供了一個很好實驗基礎,以選擇合適的Web Services交互式傳送器。
分享:C#教程:Assembly類訪問程序集信息C#中通過Assembly類可以訪問程序集信息. 1.允許訪問給定程序集的元元素,包含可以加載和執(zhí)行程序集的方法; 2.加載程序集:使用靜態(tài)方法Assembly.Load(程序集名稱)或Assembly.LoadFrom(程序集完整路徑名); 3.屬性: FullName:程序集顯示名稱; 3.方法: Ge
- asp.net如何得到GRIDVIEW中某行某列值的方法
- .net SMTP發(fā)送Email實例(可帶附件)
- js實現(xiàn)廣告漂浮效果的小例子
- asp.net Repeater 數(shù)據(jù)綁定的具體實現(xiàn)
- Asp.Net 無刷新文件上傳并顯示進度條的實現(xiàn)方法及思路
- Asp.net獲取客戶端IP常見代碼存在的偽造IP問題探討
- VS2010 水晶報表的使用方法
- ASP.NET中操作SQL數(shù)據(jù)庫(連接字符串的配置及獲取)
- asp.net頁面?zhèn)髦禍y試實例代碼
- DataGridView - DataGridViewCheckBoxCell的使用介紹
- asp.net中javascript的引用(直接引入和間接引入)
- 三層+存儲過程實現(xiàn)分頁示例代碼
- 相關鏈接:
- 教程說明:
.Net教程-解讀Java與.NET間進行Web Service交互的選擇
。