cxf服務端發布webService接口,那么我們通過開發客戶端即可調用服務端發布的webService服務接口。
其實,調用原理類似於RPC(遠程過程調用)和JMI(遠程對象調用)。只不過調用通過soap協議(簡單對象訪問協議)實現。
具體實現例子如下:
首先建一個Maven項目,項目名字,WS_Client;
然后我們要用CXF給我們提供的工具wsdl2java 來根據請求的url生成客戶端代碼;
wsdl2java工具在CXF開發包里;
開發下載地址:http://cxf.apache.org/download.html
下載二進制包,然后解壓到D盤
使用wsdl2java命令;還得配置Path。我們打開環境變量配置,加入路徑 D:\apache-cxf-3.1.12\bin 可能你的和我不一樣;
現在我們要干的事是在我們項目里生成我們需要的webservice客戶端代碼,
我們找到項目的本地路徑
然后我們進入dos,進入上面的本地硬盤地址,然后執行命令:wsdl2java http://192.168.0.102/helloWorld?wsdl
代碼已生成:
刷新下工程:
最關鍵的代碼是HelloWorldService.java 我們下面寫請求主類要用到;
我們下面寫下主類 Client ,自己建下:
1 package com.hik.webservice; 2 3 /** 4 * @ClassName: Client 5 * @Description: TODO 6 * @author jed 7 * @date 2017年7月30日下午1:58:36 8 * 9 */ 10 public class Client { 11 12 public static void main(String[] args) { 13 HelloWorldService service = new HelloWorldService(); 14 HelloWorld helloWorld = service.getHelloWorldPort();//獲取代理 15 System.out.println(helloWorld.say("你好!")); 16 } 17 }
運行如下:
說明我們成功調用了webservice服務器端的接口。