前面已經創建好了服務類,並且發布了服務,現在要去調用發布放服務;
在這里我將其分成兩個項目;
1.重新創建一個WebProject ,並且使用wsdl2java 這個工具生成了客戶端的代碼(得先配置CXF的環境);
在這里小弟我遇到了一個揪心的問題,首先我使用的是JDK1.8,然后在doc中生成代碼的時候會出現這樣的提示
‘由於 accessExternalSchema 屬性設置的限制而不允許
'file'
訪問,
因此無法讀取方案文檔
'xjc.xsd'
。
然后我將其替換成1.7的JDK, 然而並沒有什么用,還是繼續這提示,最后的解決方法就是我在JDK1.7的jre的lib中添加了一個叫‘jaxp.properties ’的配置文件,內容為
javax.xml.accessExternalSchema = all,順利解決;
在DOC中生成代碼的語句 :wsdl2java -d . http://localhost:8080/CxfAndSpring/ws/weather?wsdl
代碼生成后如下
2.開始配置applicationContext.xml文件
address就是server的WSDL文檔地址 ;
serviceclass就是wsdl文檔中的porttype ,也就是你發布的接口名稱,可以把你的wsdl文檔拉到最下面,然后根據bingding的名稱去找到porttype;
在這里我的porttype 就是weatherCXF
在這里就把客戶端配置完成,然后就來用junt 來測試client
1 先加載spring的配置文件:
2.然后拿到我們配置好的bean 之后就可以拿到結果了~
搞定睡覺。。。