java调用webservice的方法-轻松的博客-博客园.docxVIP

  • 326
  • 0
  • 约2.53千字
  • 约 5页
  • 2021-04-13 发布于天津
  • 举报

java调用webservice的方法-轻松的博客-博客园.docx

java 调用 webservice 的方法 -轻松的博客 - 博客园 JAVA 调用 Web Service 的方法 1.使用 HttpClient 用到的 jar 文件: commons-httpclient-3.1.jar 方法: 预先定义好 Soap 请求数据,可以借助于 XMLSpy Professional 软件来做这一步生成。 String soapRequestData = lt;?xml version=\1.0\ encoding=\utf-8\?gt; + lt;soap12:Envelope xmlns:xsi=\ /2001/XMLSchema-instance\ xmlns:xsd=\ /2001/XMLSchema\ xmlns:soap12=\ /2003/05/soap-envelope\g t; + lt;soap12:Bodygt; + lt;getCountryCityByIp xmlns=\ http://WebX/\gt; + H H lt;theIpAddressgt;57lt;/theIpAddressgt; + lt;/getCountryCityByIpgt; + lt;/soap12:Bodygt; + lt;/soap12:Envelopegt;; 然后定义一个 PostMethod ,这时需要指定 web 服务的 Url;PostMethod postMethod = new PostMethod(#8220; /WebServices/I pAddressSearchWebService.asmx#8221;);然后把 Soap 请求 数据添加到 PostMethod 数据添加到 PostMethod 中 byte[] b = soapRequestData.getBytes(utf-8); InputStream is = new ByteArrayInputStream(b,0,b.length); RequestEntity re = new InputStreamRequestEntity(is,b.length,application/soap+xml; charset=utf-8); postMethod.setRequestEntity(re); 最后生成一个 HttpClient 对象,并发出 postMethod 请求 HttpClient httpClient = new HttpClient(); statusCode = httpClient.executeMethod(postMethod); String soapRequestData = postMethod.getResponseBodyAsString(); soapRequestData就是调用 web服务的Soap响应数据,是xml 格式的,可以通过解析 soapRequestData来获得调用 web服 务的返回值。 使用 Xfire 用到的 jar 文件 xfire-all-1.2.4.jar, jdom-1.0.jar 方法: 定义一个 Client 对象,指定 web 服务的 wsdl 的地址 Client c = new Client(new URL(#8220; /WebServices/IpAddr essSearchWebService.asmx?wsdl#8221;)); 调用 Client 对象的 invoke 方法, 指定 web 服务的方法名, 和 参数,返回值是一个 Object 型的数组。 面代码调用 getVersionTime 方法,这个方法没有参数用所 以后一个参数使用 new Object[0] 。 Object[] results = c.invoke(#8220;getVersionTime#8221;, new Object[0]); 使用 axis2 载 axis2-1.4 方法: 打开控制台,进入 axis2-1.4/bin 目录 wsdl2java.bat -uri /WebServices/IpAddressSearchWeb Service.asmx?wsdl -p ws.clinet.axis2 上述命令执行完后, 会在 当前目录下生成一个 src 目录,在 src\ ws\ clinet\ axis2 目录里 生成 XXXXCallbackHandler.java 和 XXXXStub.java 两个文 件。 wsdl2java 会根据 wsdl 文件生成 web 服务的调用接口, 参数 类,返回值的类。 在调用 webservice 的时候直接实例化一个 XXXXStub 的对 象,然后调用 web

文档评论(0)

1亿VIP精品文档

相关文档