上一篇說到 服務端的配置 現在來說一下 客戶端 客戶端簡單的多 只需要相關的jar包
原料
1.一個 可用的webService Server端 我這里是 :
http://localhost:8085/services/HelloWorldService?wsdl
這是在另一個服務端工程中的服務類 邏輯代碼為 :
package example;
/**
* Created with IntelliJ IDEA.
* Author: DAX
* Date: 2016/12/10
* Time: 14:26
*/
public class HelloWorld {
public String sayHelloWorldFrom(String from) {
String result = "Hello, world, from " + from;
System.out.println(result);
return result;
}
}
2. Intellij Idea 2016 2.3
步驟如下:
1.新建個工程 如圖: 選擇Apache Axis idea 會自動現在所需要的 基礎jar包
2.點擊下一步 進入工程后 會有下面的 對話框 先說明下 框中參數的作用:
3.如果你很清楚 這些參數的作用 就直接設置 就行了 也可以關掉 從這里設置 想建在哪個包 自己就那個包點擊右鍵如下選擇
點擊后 出現如下圖所示 相關的參數 上面已經介紹過了
4.點擊OK生成客戶端 其中會有不少錯誤 下面的錯誤區域 需要自己改 IDE不是萬能的:
如果 你生成了 TestCase 測試類 (上圖倒數第二個類) 也是會報錯的 因為你沒有加入JUnit框架 IDEA的解決方法很簡單 在類上增加一個@Test注解 然后用萬能鍵 ALT+Enter 選擇 JUnit4 加入 然后刪除 @Test注解 就可以 進行單元測試了
我修改后的代碼如下:
package cn.ws.client;
/**
* Created with IntelliJ IDEA.
* Author: DAX
* Date: 2016/12/10
* Time: 15:16
*/
public class App {
public static void main(String[] argv) {
try {
HelloWorldService_ServiceLocator locator = new HelloWorldService_ServiceLocator();
HelloWorld service= locator.getHelloWorldService();
System.out.println(service.sayHelloWorldFrom("hello WebServiceClient"));
} catch (javax.xml.rpc.ServiceException | java.rmi.RemoteException ex) {
ex.printStackTrace();
}
}
}
自己點擊傳參數測試就行了 運行結果如下: