JAVA自带wsimport生成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:定义生成类的包名
  使用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"));
     }
 }
posted @ 2013-04-27 16:54  王 庆  阅读(2789)  评论(0编辑  收藏  举报