Ⅰ cxf的wsdl2java命令和JDK的wsimport命令的區別和使用
JDK提供了一個wsimport.exe的命令,主要是用於將WebService生成客戶端代碼,然後好調用WebService。
wsimport 是根據JDK1.6.0_21及以上的生成本地代碼的,它只能解析伺服器端的SOAP協議為1.1,不能解析SOAP1.2的協議。如果解析SOAP1.2 將會解析不完全。
用法:前提是已經將JDK配置為了path環境變數 C:\Documents and Settings\Administrator>wsimport -s F:\ -p com.client.jdk.wsimport http://localhost:1111/hello?wsdl
-s 後面指定生成文件的路徑,-p 自定義類包 http://localhost:1111/hello?wsdl 是wsdl的路徑。
CXF也提供了根據WSDL生成客戶端代碼的命令wsdl2java.exe 。它是根據jdk1.7生成的本地代碼,所以,需要對生成的代碼做一點點修改。
它可以支持SOAP1.1 和SOAP1.2的協議。前提是你已經下載了Apache CXF 並且將wsdl2java.exe配置為了path環境變數。
用法:C:\Documents and Settings\Administrator>wsdl2java -d F:\ -p com.client.cxf http://localhost:1111/hello?wsdl
-d 後面指定生成文件的路徑,-p 自定義類包 http://localhost:1111/hello?wsdl 是wsdl的路徑。
Ⅱ 如何用java調用cxf webservice介面
WebService CXF客戶端報 java.lang.RuntimeException: Cannot create a secure XMLInputFactory 異常,查了許多網路關於該問題的解決辦法,很多都說缺少包問題,但問題是我的包都存在,我用的是apache-cxf-2.7.6,經過不懈努力終於解決了,我的服務端用的是web project,客戶端用的是java project,客戶端jar包是引用其它地方的,後來建一個web project客戶端,把jar直接復制到project的lib目錄下就行了,jdk用的是1.7,客戶端依賴的介面用wsdl2java生成的。