码迷,mamicode.com
首页 > Web开发 > 详细

webservice客户端的生成方式

时间:2015-06-03 15:44:20      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:webservice

1、通过eclipse创建webservice client,这个功能是eclipse自带的,不详述;

2、通过命令根据wsdl文件去生成webservice client,如下代码,将命令写成一个批处理文件执行即可:

set HOME=D:\workspace\cvte\ekp\WebContent\WEB-INF\lib
 java -classpath %HOME%\axis-1.4.jar;%HOME%\axis-ant.jar;%HOME%\commons-discovery-0.2.jar;%HOME%\commons-logging-1.0.4.jar;%HOME%\jaxrpc.jar;%HOME%\log4j-1.2.16.jar;%HOME%\mail.jar;%HOME%\saaj-api-1.3.jar;%HOME%\wsdl4j-1.6.2.jar;;%HOME%\mail.jar; org.apache.axis.wsdl.WSDL2Java -p com.landray.kmss.cvte.review.integration.webservice.client.ocs -t -s http://ocs.gz.cvte.cn/WS/SwDeliverBill?wsdl
 pause

注意各个jar包是否存在和jar包的路径,还有客户端代码的存放包名。

 

3、直接写java代码调用,以下为利用AXIS调用webservice

  Service service = new Service();// 创建一个Service对象
  String endPoint = "http://ocstestlmk.gz.cvte.cn/WS/SwDeliverBill";//这里注意要去掉?wsdl,不然会报错
  // 你的WebService的URL
  QName qName = new QName(endPoint);// 创建一个QName对象把你的endPoint丢进去
  Call call = service.createCall(qName, "getSYSoftByWorkOrderId");// 创建一个Call对象把QName实力丢进去,把WebSevice提供的方法的名字丢进去,我这里是sayHello
  call.setTargetEndpointAddress(endPoint); // 在Call实例里要指定endPoint。

  Object invoke = call
    .invoke(new Object[] { "Ki5lkjofj4Fsj3dDSjj3sdji38j6",
      "liaomingkai", "QX-SY15031071H" });
  System.out.print(invoke);
  List outputValues = call.getOutputValues();
  for (Iterator iterator = outputValues.iterator(); iterator.hasNext();) {
   Object object = (Object) iterator.next();
   System.out.println(object);
  }

 

 

webservice客户端的生成方式

标签:webservice

原文地址:http://blog.csdn.net/jojoy_828/article/details/46346387

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!