序
雖然Web Services號稱讓不同語言開發的環境都能互相呼叫對方的功能,但還是會有些問題存在,我之前就遇過使用IBM的開發工具要呼叫我用.Net產生的Web services,結果無法解譯WSDL的問題~
原因應該是因為.Net的Web services產生了許多的描述,其中同時包含Soap1.1與Soap1.2,而有些工具無法處理這樣的內容
解決方法就是移掉Soap 1.2的描述,當然,不是叫你把WSDL用編輯器修改...那我就不用寫這篇了~
開發環境
Microsoft Visual Studio 2005
方法
動作其實很簡單,在你的Web專案最外層會有一個web.config,裡面描述了許多web專案的設定,
將以下內容加入configuration區塊下的system.web區塊
如,
<configuration> ... <system.web>
...
<webServices> <protocols> <remove name="HttpSoap12"/> </protocols> </webServices>
...
</system.web> </configuration>
然後,你就會發現產生的WSDL只剩Soap1.1的描述了,簡單吧
參考資料
- http://adrianba.net/archive/2005-02-28.aspx(解決方法從這裡看到的,不過內容有些修正)
- .Net Web Services的開發教學(隨手找的)
- ASP.NET Web Services QuickStart Tutorial(裡面也有稍微談到我說的東西,還有些開發的範例)
0 意見:
張貼留言