使用命令wsimport构建WebService客户端

服务端:请看我的上一篇博文(Java使用XFire调用WebService接口

客户端:在JDK的bin文件夹中,有一个wsimport.exe,这个工具依据wsdl文件生成相应的类文件,然后用这些类文件,就可以像调用本地的类一样调用WebService提供的方。该工具可以用于非Java的服务器,如:用C#编写的WebService,通过wsimport则生成Java的客户端实现。

  在命令提示符中使用如下命令:wsimport -keep -p com.demo.client http://localhost:8080/Demo/services/MyService?wsdl

  命令参数说明:

  -d:生成客户端执行类的class文件的存放目录

  -s:生成客户端执行类的源文件的存放目录

  -p:定义生成类的包名

  其他命令参数请参照:http://download-llnw.oracle.com/javase/6/docs/technotes/tools/share/wsimport.html

  使用wsimport命令后,我们可以得到如下代码文件:

  命令行中当前目录

    |--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"));
    }
}

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。