服务端:请看个人上一篇博文(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")); } }