上一篇介紹了如何用Eclipse產生JAX-WS WebService服務端,現在介紹如何產生用戶端
1、 建立一個web工程,Dynamic Web Project (File->New->Dynamic Web Project),取名叫“ws-client”
2、 建立WebService用戶端(選中建立的用戶端右擊New->Other->Web Services->Web Service Client),在Service definition中輸入wsdl檔案的地址,並在Configuration中選擇運行環境,我的環境是Tomcat7.0和CXF,然後一直點擊Next,最後Finish。
Eclipse後台開始組建檔案並列印日誌
Loading FrontEnd jaxws ...Loading DataBinding jaxb ...wsdl2java -client -d E:\workspace\ws-client\.cxftmp/src -classdir E:\workspace\ws-client\build\classes -p http://impl.service.demo.ws/=ws.demo.service.impl -impl -validate -exsh false -dns true -dex true -wsdlLocation http://localhost:8081/ws-server/services/AddServiceImplPort?wsdl -verbose -defaultValues -fe jaxws -db jaxb -wv 1.1 http://localhost:8081/ws-server/services/AddServiceImplPort?wsdlwsdl2java - Apache CXF 3.1.6
組建檔案後項目結構:
3、 寫main函數
package main;import ws.demo.service.AddService;import ws.demo.service.impl.AddServiceImplService;public class Main {public static void main(String[] args) {AddServiceImplService service = new AddServiceImplService();AddService port = service.getAddServiceImplPort();int result = port.add(3, 4);System.out.println(result);}}
運行程式,輸出:
六月 14, 2016 5:09:15 下午 org.apache.cxf.wsdl.service.factory.ReflectionServiceFactoryBean buildServiceFromWSDL資訊: Creating Service {http://impl.service.demo.ws/}AddServiceImplService from WSDL: http://localhost:8081/ws-server/services/AddServiceImplPort?wsdl7
其中7就是最後通過WebService調用服務端啟動並執行結果。