下面的代码描述了一个简单的客户端调用webservice的测试代码
import javax.xml.namespace.QName;
import org.apache.axis.client.Call;
import org.apache.axis.client.Service;
import com.demo.webservice.WebServiceParam;
/**
* <p> Title: webservice测试公共类</p>
* <p> Description: </p>
* <p> Copyright: Copyright (c) 2012 2012-2-13</p>
* <p> Company: pccw</p>
* @author xuwh
* @version 1.0
*/
public class WebServiceClientTest {
public static void main(String args[])
{
// 服务端webservice地址
String endpoint = "http://localhost:8080/sshdemo/services/UserWebService";
// 定义服务端webservice调用的方法名称opName
String opName = "getUserNameById";
WebServiceParam[] params = new WebServiceParam[1];
// 可以定义多个WebServiceParam对象表示多个参数
WebServiceParam p1 = new WebServiceParam();
// 定义服务端webservice调用方法的参数名称以及值
p1.setParamName("userId");
p1.setParamValue("402881cc3564decb01356510df090004");
QName qName = org.apache.axis.encoding.XMLType.XSD_STRING;
p1.setqName(qName);
params[0] = p1;
String str="";
try {
str = getStringByWebService(endpoint, opName, params);
System.out.println("==webService Result==" + str);
} catch (Exception e) {
str = "异常";
System.out.println("==webService error=str=" + str);
}
}
/**
* <p>
* Description:调用返回值是string类型的webservice
* <p>
* @param endpoint
* @param opName
* @param params
*/
public static String getStringByWebService(String endpoint, String opName,
WebServiceParam[] params) throws Exception {
try {
String res = null;
Service service = new Service();
Call call = (Call) service.createCall();
call.setTargetEndpointAddress(new java.net.URL(endpoint));
for (int i = 0; i < params.length; i++) {
call.addParameter(params[i].getParamName(), params[i].getqName(),
javax.xml.rpc.ParameterMode.IN);
}
call.setReturnType(org.apache.axis.encoding.XMLType.XSD_STRING);
call.setOperationName(new QName("http://localhost:8080/sshdemo/services/" + opName,
opName));
call.setUseSOAPAction(true);
//call.setSOAPActionURI("http://localhost:8080/sshdemo/services/" + opName + "/Rpc");
call.setSOAPVersion(org.apache.axis.soap.SOAPConstants.SOAP11_CONSTANTS);
Object o[] = new Object[params.length];
for (int i = 0; i < params.length; i++) {
o[i] = params[i].getParamValue();
}
res = (String) call.invoke(o);
return res;
} catch (Exception e) {
throw e;
}
}
}
/**
* <p> Title: 调用webservice的参数配置对象</p>
* <p> Description: </p>
* <p> Copyright: Copyright (c) 2012 2012-2-13</p>
* @version 1.0
*/
public class WebServiceParam {
private String paramName;
private Object paramValue;
private QName qName;
public WebServiceParam(){}
public WebServiceParam(String paramName,String paramValue,QName qName){
this.paramName = paramName;
this.paramValue = paramValue;
this.qName = qName;
}
public QName getqName() {
return qName;
}
public void setqName(QName qName) {
this.qName = qName;
}
public String getParamName() {
return paramName;
}
public void setParamName(String paramName) {
this.paramName = paramName;
}
public Object getParamValue() {
return paramValue;
}
public void setParamValue(Object paramValue) {
this.paramValue = paramValue;
}
}
分享到:
相关推荐
soapui生成webservice客户端代码,比较详细的讲解了配置,以及生成客户端代码的步骤
测试Webservice客户端代码,详情查看:http://blog.csdn.net/jptiancai/article/details/23770713
WebService客户端是调用这些服务的应用程序部分,而"WebService客户端自动生成工具"则是帮助开发者快速创建与WebService交互的代码的工具。在这种情况下,我们讨论的是一个使用Axis1.4批处理脚本来实现这个功能的...
此外,调试和测试WebService客户端也是一项重要任务。开发者可以使用像SoapUI这样的工具,进行功能测试、性能测试以及安全性测试。这些工具能帮助模拟请求,查看响应,甚至检查HTTP头和SOAP消息的详细内容。 总的来...
在本场景中,我们讨论的是一个Web Service客户端代码,该代码可以与任何数据库配合使用,其框架是Spring MVC,数据访问层则采用MyBatis。 Spring MVC是一个强大的MVC(Model-View-Controller)框架,广泛应用于Java...
客户端生成工具是实现Web服务交互的关键组件,它能够帮助开发者自动创建与WebService接口进行通信的客户端代码,大大简化了开发流程。本文将详细介绍关于Web服务客户端生成工具的相关知识点。 1. **Web服务标准与...
eclipse 根据 wsdl 文件生成 webservice 客户端 eclipse 是一个功能强大且灵活的...通过配置 log4j 和添加相关的 jar 包,然后使用 eclipse 的插件生成客户端代码,我们就可以快速开发和测试 webservice 应用程序。
4. **测试示例**:在生成的项目中,你可能会找到一个名为“TestClient.java”的文件,这是一个简单的测试类,用于演示如何使用生成的客户端代码调用Web服务。你可以运行这个类,观察服务调用的结果。 5. **备注信息...
2. **WebService客户端调用**: - **代理类生成**:客户端通常需要一个代理类来调用服务端的方法。对于Java,可以使用WSDL文件生成代理类,如使用`wsimport`工具或者Apache CXF框架。 - **SOAP请求构造**:通过...
测试代码通常包括以下步骤: 1. 创建客户端实例:与上述创建客户端实例的步骤相同。 2. 设置模拟数据:在测试环境中,可能会使用Mockito等工具模拟服务器响应,或者配置测试服务器来返回特定的响应。 3. 调用服务...
总的来说,"webservice客户端client,made by .net"是一个基于.NET Framework开发的Web服务测试和调用工具,适用于需要与Web服务交互的开发者,它简化了与Web服务通信的过程,且依赖于用户系统上的.NET Framework环境...
本篇文章将详细探讨如何使用CXF框架来开发WebService客户端。 一、CXF简介 CXF是一个开源的Java框架,它支持构建和部署SOAP(简单对象访问协议)和RESTful(Representational State Transfer)Web服务。CXF提供了...
在本场景中,"webservice接口测试代码"指的是利用编程语言编写代码来验证WebService接口的功能是否正常运行。测试是软件开发过程中的关键环节,确保了服务的质量和可靠性。 Axis2是Apache软件基金会开发的一个Web...
- 可以利用模拟服务器工具(如SOAPUI)进行接口测试,确保客户端正确地发送和接收数据。 总的来说,使用VC开发Web Service客户端涉及到理解Web Service的相关协议,生成并使用代理类,处理网络通信和安全性,以及...
- `src`目录包含源代码,通常分为`main/java`和`test/java`,分别存放源码和测试代码。 - `target`目录是Maven编译后的输出目录,包括编译后的类文件和打包的JAR/WAR文件。 5. **学习资源** - 项目中的详细注释...
【使用Axis自动生成WebService客户端代码】是Web服务开发中的一个重要步骤,它简化了与服务交互的复杂性。本文档主要介绍了如何在MyEclipse 7.0环境下利用Axis 1.4工具生成客户端代码,以便调用并测试Webservice。 ...
WebserviceStudio20便是一款专门用于模拟Web服务客户端的测试工具,帮助开发者便捷地进行功能验证和性能测试。 WebserviceStudio20的核心功能主要包括以下几点: 1. **SOAP请求构造**:它允许用户直接在界面中输入...
标题提及的“axis2支持webservice 自动生成代码客户端服务端代码插件”,是指Apache Axis2为Eclipse IDE提供的一套工具,旨在简化Web服务的开发流程。这个插件允许开发者通过WSDL(Web Services Description ...
通过这个"jax-ws WebService客户端与服务端工程",你可以实践创建一个简单的JAX-WS服务,了解服务端的部署,以及客户端如何通过WSDL找到服务并进行调用。同时,还可以学习到JAXB在数据转换中的作用,以及如何处理Web...
总结,"基于pb11.5自带webservice 客户端的接口测试例程"是一个实用的教学资源,旨在帮助开发者了解如何在PB11.5环境中进行Web服务接口测试。通过学习这个例程,你可以掌握如何创建Web服务客户端,发起请求,处理...