服務端:請看個人上一篇博文(Java使用XFire調用WebService接口)html
客戶端:在JDK的bin文件夾中,有一個wsimport.exe,這個工具依據wsdl文件生成相應的類文件,而後用這些類文件,就能夠像調用本地的類同樣調用WebService提供的方。該工具能夠用於非Java的服務器,如:用C#編寫的WebService,經過wsimport則生成Java的客戶端實現。java
在命令提示符中使用以下命令:wsimport -keep -p com.demo.client http://localhost:8080/Demo/services/MyService?wsdlweb
命令參數說明:服務器
-d:生成客戶端執行類的class文件的存放目錄oracle
-s:生成客戶端執行類的源文件的存放目錄工具
-p:定義生成類的包名測試
其餘命令參數請參照:http://download-llnw.oracle.com/javase/6/docs/technotes/tools/share/wsimport.htmlspa
使用wsimport命令後,咱們能夠獲得以下代碼文件:命令行
命令行中當前目錄code
|--com
|--demo
|--client
|--Example.java
|--ExampleResponse.java
|--MyService.java
|--MyServicePortType.java
|--ObjectFactory.java
|--package-info.java
能夠將上述文件拷貝到你的項目中,便可使用。
測試:新建工程,並將com.demo.client包拷到工程文件下,編寫測試文件Test.java,代碼以下:
package com.demo.wsimport; public class Test { /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub MyService server = new MyService(); MyServicePortType spt = server.getMyServiceHttpPort(); System.out.println(spt.example("hello")); } }