Java調用ASP.NET的webservice故障排除
公司要接入其它公司的一個業務功能,對方是提供的 .net產生的webservice,在用cxf的wsdl2java命令生成客戶端的測試代碼時,出現了如下故障
WSDLToJava Error: Thrown by JAXB: undefined element declaration 's:schema'

這里要特別說明的是,只能通過網頁中另存為ccservice.wsdl,不能簡單的將網頁中的復制后,再粘貼到一個文本文件中,另存為 ccservice.wsdl,這樣即使經過下述的 step2后,仍然會報錯




總結一下
在用cxf的wsdl2java命令處理net或其它語言產生的webservice時,如出現報錯,要仔細觀察報錯信息的描述,通過自己思考和查詢網絡資源,有針對性的修改,一定是可以解決的。
第二種方式(用axis的webservice框架 解決)
從我測試來看,不需要任何修改即可生成websercie的客戶端
不過,要需要axis如下一些jar包才能保證axis產生的webservice的客戶端代碼正常運行
總結一下
如果用時候發現用cxf的 wsdl2java命令不能正常執行時,不妨考用axix之類的其它webservice框架來解決問題,換一個角度去解決問題。
調用方式
Ccservice ccservice = new Ccservice();
CcserviceSoap ccserviceSoap = ccservice.getCcserviceSoap();
ccserviceSoap.query(參數1,參數2,...);