一个webservice客户端纠结了我一个星期的时间,让我天天做噩梦。网上的资料都只讲到怎么在webservice工程中生成xfire框架的客户 端。后来尝试多次发现无法在web project工程中直接生成xfire的客户端。甚至我将独立的一个webservice工程打成jar包发部到web project项目中以无济于事最后让我神经崩溃……一段不到一百行的代码解救了我,不用引jar包,不借助任何框架。自己封装,纯天然纯绿色。
webservice客户端封装类:
public class ServiceUtil { public static String getRequest(String param, String urls, String soapAction) { try { if (param == null || urls == null || soapAction == null) { return null; } URL url = new URL(urls); URLConnection conn = url.openConnection(); conn.setUseCaches(false); conn.setDoInput(true); conn.setDoOutput(true); conn.setRequestProperty("Content-Length", Integer.toString(param .length())); conn.setRequestProperty("Content-Type", "text/xml; charset=utf-8"); conn.setRequestProperty("SOAPAction", "\"" + soapAction + "\""); OutputStream os = conn.getOutputStream(); OutputStreamWriter osw = new OutputStreamWriter(os, "utf-8"); osw.write(param); osw.flush(); osw.close(); InputStream input = conn.getInputStream(); InputStreamReader read = new InputStreamReader(input); BufferedReader reader = new BufferedReader(read); StringBuffer buf = new StringBuffer(); while (reader.read() > 0) { buf.append(reader.readLine()); } String xmlStr = buf.toString(); input.close(); read.close(); reader.close(); return xmlStr; } catch (Exception e) { e.printStackTrace(); return ""; } } } web项目中的action类调用webservice客户端接口: /** * 修改客户信息 * * @return */ public String update() { String param = "<?xml version=\"1.0\" encoding=\"UTF-8\"?><soap:Envelope xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:soap=\"http://schemas.xmlsoap.org/soap/envelope/\"><soap:Body><ModifyCustWS xmlns=\"http://www.bocim.com\"> <c> <sFuncFlag>83</sFuncFlag><sAcco></sAcco> <sAccoType></sAccoType> " + "<sCustType>1</sCustType> " + "<sIDType></sIDType> <sFrom></sFrom> <sOperator></sOperator> <sReserve></sReserve> " + "<sAddress>" + cust.getAddress() + "</sAddress> " + "<sZipcode> </sZipcode> " + "<sPhone>" + cust.getPhone1() + "</sPhone> " + "<sFaxNo></sFaxNo> " + "<sEmail>" + cust.getEmail() + "</sEmail> " + "<sMobileNo>" + cust.getMobile1() + "</sMobileNo> <sBP></sBP> <sBirthday></sBirthday> <sSex></sSex> <sEducation></sEducation> <sFamilyNo></sFamilyNo><sVocation></sVocation><sIncome></sIncome><sCorpTel></sCorpTel><sCorpName></sCorpName><sBillSend></sBillSend><sHomePhone></sHomePhone><sNationality></sNationality><sBillSendPass></sBillSendPass><sBillSendFlag></sBillSendFlag><sMemo></sMemo><sContact></sContact><sReserve4></sReserve4></c></ModifyCustWS></soap:Body></soap:Envelope>"; String retur = ServiceUtil.getRequest(param, "http://18.1.6.76/BocimWebService/service.asmx", "http://www.bocim.com/ModifyCustWS"); if (retur.indexOf("<sSuccessFlag>0</sSuccessFlag>") == -1) { System.out.println("aaaaaaaaaaaaaaaaaaaaaaaaa"); return ActionSupport.INPUT; }else { return ActionSupport.SUCCESS; } }
相关推荐
C++通过gSOAP开发WebService客户端 本文档主要介绍了使用C++语言和gSOAP库开发WebService客户端的步骤和方法。gSOAP是一个基于C/C++的WebService开发库,支持SOAP和XML协议。下面是开发WebService客户端的详细步骤...
soapui生成webservice客户端代码,比较详细的讲解了配置,以及生成客户端代码的步骤
WebService客户端是调用这些服务的应用程序部分,而"WebService客户端自动生成工具"则是帮助开发者快速创建与WebService交互的代码的工具。在这种情况下,我们讨论的是一个使用Axis1.4批处理脚本来实现这个功能的...
WebService客户端是基于Web服务技术的一种应用程序,它允许不同的系统之间通过互联网进行通信和交互。在分布式计算环境中,WebService客户端扮演着关键角色,使得各种应用程序能够跨平台、跨语言地共享数据和服务。 ...
WebService客户端调用WebService服务示例代码,java代码,纯手工,包括直接httpClient直接发送Saop报文调用和利用wsimport -keep 生成客户端代码后调用两种方式的示例。因涉及商务账户密码隐私,因此代码中的有些账号...
使用cxf wsdl2java生成webservice客户端命令
本文将深入探讨"C#.NET WebService 客户端+服务器"的主题,介绍如何创建和调用Web服务,以及Web服务的三种访问方式。 首先,Web服务是一种基于标准协议(如SOAP和HTTP)的平台无关的通信机制,允许不同系统的应用...
本实例将详细介绍WebService客户端和服务端的实现,包括完整的代码示例。 1. WebService服务端开发 服务端是提供功能接口的地方,通常称为Web服务提供商。创建一个WebService服务端,首先需要定义服务接口,这个...
eclipse 根据 wsdl 文件生成 webservice 客户端 eclipse 是一个功能强大且灵活的集成开发环境(IDE),它提供了许多插件和工具来帮助开发者快速开发和测试应用程序。其中一个重要的应用场景是使用 wsdl 文件生成 ...
总结来说,本实例涉及的是在Windows 7环境下,使用Apache Tomcat和JDK创建一个基于JAX-WS的WebService客户端。这个过程包括获取WSDL文件,生成客户端代码,编写应用程序,部署和运行。理解并掌握这些步骤对于开发与...
### Java编写WebService客户端详解 #### 一、概述 在现代软件开发中,Web服务作为一种重要的技术手段被广泛应用于系统间的数据交互与通信。其中,基于Java的WebService客户端开发更是占据了重要地位。本文将通过...
Java开发生生WebService客户端代码操作步骤 Java开发生生WebService客户端代码操作步骤 Java开发生生WebService客户端代码操作步骤
在Java开发中,Web服务是实现跨平台、跨语言通信的一种常见方式,而WebService客户端的创建则至关重要。本文将深入探讨如何使用`wsimport`命令生成WebService客户端代码,并通过一个查询手机号码的实际示例来演示...
根据对方提供的webservice地址,你先将对方webservice的wsdl文件描述文件保存到本地为后缀名为.wsdl的文件,然后保存到Tools的这个文件夹下,编辑WSDL2AxisClient.bat这个文件,将%Java_Cmd% org.apache.axis.wsdl....
本文将详细介绍如何在Eclipse环境中,利用WSDL文件逆向生成WebService客户端项目的源码。 首先,WSDL文件是一个XML格式的文档,它描述了Web服务的接口、操作、消息格式以及服务的位置。这个文件是服务提供者发布的...
本篇文章将详细介绍如何使用HttpClient实现WebService客户端。 首先,我们需要了解WebService的基本概念。WebService是一种基于标准的、平台无关的、可以跨网络传输数据的方式。它使用SOAP(Simple Object Access ...
**WebService客户端Demo详解** 在IT行业中,WebService是一种广泛使用的接口通信技术,它允许不同系统间的交互,不受开发语言和平台的限制。本示例“WebService客户端Demo”将着重讲解如何利用SOAP(Simple Object ...
本教程将聚焦于如何使用Java语言来编写一个WebService客户端。我们将不涉及过多理论,而是侧重实践,一步步教你如何实现。 首先,理解WebService客户端的基本工作原理是必要的。客户端通常会通过SOAP(Simple ...
这个工程详细的介绍了webService服务客户端如何调用简单和复杂的webService,其中就包括传递的参数是对象类型,返回数据是数组类型,还有最简单的基本类型。压缩包里还配置说明,清晰的说明webService的整个过程,对...
WebService客户端开发是一个重要的IT主题,尤其当涉及到跨平台通信和数据交换时。在这个场景中,我们关注的是使用gSOAP库在MFC(Microsoft Foundation Classes)环境中进行开发。gSOAP是一个开源工具包,它允许...