用eclipse建立简单WebService客户端,使用WSDL,用于短信接口发送

使用工具:eclipse 标准版,不用任何插件。

操作步骤:

  1. 建立java Project 命名为mess;
  2. 再在project上右键,选择other,选择web service文件类别,选择web service client类,里面只用添加wsdl地址即可,不必修改其它的内容;
  3. 完成之后,生成你wsdl中服务名,为了醒目,假设是“xxxx”;那么会有两个关键类:xxxxStub,xxxxLocator;
  4. 可能会有xxxxPortProxy文件错误,这个文件其实可以不用,可以删除;(提示:如果想修改正常,原因是类包存在问题。)
  5. 随意建立一个类,导入包含xxxxStub和xxxxLocator类包;由于webService使用的是接口!所以要实例化,并且抛出异常;
  6. 然后可以直接Ctrl+F11运行即可。
 1 package xxxxService;

 2 

 3 import java.net.MalformedURLException;

 4 import java.rmi.RemoteException;

 5 

 6 import xxxx_pkg.xxxxStub;

 7 import xxxx_pkg.xxxxLocator;

 8 

 9 public class Test {

10 

11     public static void main(String[] args) {

12         try {

13             xxxxLocator service = new xxxxLocator();

14             java.net.URL url = new java.net.URL("URL?WSDL");

15             xxxxStub stub = new xxxxStub(url, service);

16             String x2 = stub.sendMessageFunction("String", "String", "String", "String", "String", "String");

17             System.out.println(x2);

18         } catch (RemoteException e) {

19             // TODO Auto-generated catch block

20             e.printStackTrace();

21         } catch (MalformedURLException e) {

22             // TODO Auto-generated catch block

23             e.printStackTrace();

24         }

25 

26     }

27 

28 }
新建的测试的类

扩展:

  其实不止可以新建java project,也可以建立Dynamic Web Project,只是更多人用来做C/S架构而已;

  附上一篇介绍各种webService的文章:java 调用webservice的各种方法总结

后记:

  在网上查阅了许多资料,无奈能力有限,各种各样的框架,要不就是有问题,要不就是不支持,有可能会出现下列原因:

  xFire:使用eclipse plugin 中 xfire 提示的是xxxxImpl类中有“UnsupportedOperationException()”异常,结果愣是改了半天没有任何进展!

  CXF:使用Apache 最新的 CXF2.7.6,弄了一会了wsdl2java.bat,

    cmd到这个bat文件目录

    执行:set JAVA_HOME="E:\Progra~1\Java\jdk1.7.0_05"

    执行:call wsdl2java.bat "URL?wsdl"

  这样就可以自动生成webservice client的java代码,但是!,出现“WSDLToJava Error: Rpc/encoded wsdls are not supported with CXF”;

  Axis:SAOP:然后再看看Axis1.x,Axis2.x的例子,头大了!

  初学,讲得比较简单。

你可能感兴趣的:(webservice)