方法一:
静态Stub
j2ee里面的stub:为屏蔽客户调用远程主机上的对象,必须提供某种方式来模拟本地对象,这种本地对象称为存根(stub),存根负责接收本地方法调用,并将它们委派给各自的具体实现对象
1.环境变量设置
.;%JAVA_HOME%\lib;E:\libws\axis.jar;E:\libws\commons-logging.jar;E:\libws\commons-discovery.jar;E:\libws\wsdl4j.jar;E:\libws\saaj.jar;E:\libws\jaxrpc.jar;
2.
e:\lib\java org.apache.axis.wsdl.WSDL2Java srmService.wsdl
生成静态stub
3.导入stub到工程
4.客户端调用WebService
public class Call_QISWS {
public static void main(String[] args) throws Exception {
SrmInterfaceBO srmService =new SrmInterfaceBOLocator();
SrmInterfaceBOPortType srmClient=srmService.getSrmInterfaceBOHttpPort();
ArrayOfDCEC_I_SRMInfoNotify ag=srmClient.getAddInfoNotify();
DCEC_I_SRMInfoNotify[]array=ag.getDCEC_I_SRMInfoNotify();
System.out.println(array[0].getInfoID());
}
}
方法二:
客户端动态调用
public class CallWS {
public static void main(String[] args) {
User user = new User();
try {
String endpoint ="http://127.0.0.1:8080/TESTWeb/dcec_srm_ws_services/SRMSSOUser?wsdl";
String nameSpaceUri ="http://127.0.0.1:8080/TESTWeb/dcec_srm_ws_services/SRMSSOUser";
Service service = new Service();
Call call = null;
call = (Call) service.createCall();
call.getMessageContext().setUsername("xxxx");//axis中的用户名
call.getMessageContext().setPassword("xxxx");//axis中的密码
QName userQn = new QName("urn:BeanService", "User");
call.registerTypeMapping(User.class, userQn,
new BeanSerializerFactory(User.class, userQn),
new BeanDeserializerFactory(User.class, userQn));
user.setUser_Name("wufeng");
user.setUser_Email("123@123.com");
user.setUser_Cell("111");
user.setUser_Fax("0551-11");
user.setDept_ID(49);
user.setUser_Pwd("999");
user.setUser_RealName("DCEC");
//update user's info
QName getOneQn = new QName(nameSpaceUri, "updateSSOUser");
call.setOperationName(getOneQn);
call.setTargetEndpointAddress(new java.net.URL(endpoint));
System.out.println(call.getTargetEndpointAddress());
boolean result = ((Boolean) call.invoke(new Object[] { user })).booleanValue();
System.out.println("Result:"+result);
} catch (Exception ex) {
ex.printStackTrace();
}
}
}
分享到:
相关推荐
java axis客户端调用webservice,可应用于ofbiz框架。 解决网络上共享代码两次调用后会出现timeout的BUG
用AXIS2作为客户端调用webService的demo:本人亲测可用,eclipse工程java项目包含完整代码和完整jar包, 只要用eclipse导入项目即可,运行控制台显示success或者false字符串,说明OK。
本文将深入探讨如何使用Axis2客户端调用WebService接口,并且会特别关注如何精简所需的jar包。 首先,了解Axis2客户端的基本概念是至关重要的。Axis2客户端是用于与远程Web服务交互的工具,它允许开发者通过SOAP...
本方法是用axis1.4技术,实现java客户端调用webservice。已经可实现过可行的,如果不行可加我QQ号302633进行详细解析。
axis2客户端调用axis1服务接口 调用方式 使用RPC方式调用WebService,为了防止冲突可以增加 // 与weblogic的lib冲突配置 System.setProperty("javax.xml.stream.XMLInputFactory", ...
本文将详细讲解如何使用Axis2来发布Web服务以及如何生成客户端代码来调用这些服务。 首先,让我们了解发布Web服务的过程: 1. **创建WebService**:在Axis2中,可以通过编写一个简单的Java类并暴露其方法作为Web...
在这个场景下,"Xfire客户端调用webservice jar包"是指Xfire客户端为了实现某些功能,如获取服务器数据或更新信息,需要调用Web服务的接口。这些接口通常以Java的jar包形式提供,方便开发者集成到他们的应用中。 ...
在客户端调用WebService时,这个库用于解析服务的WSDL文件,从而生成相应的代理类,使得客户端代码能够方便地调用服务。 3. **axis-jaxrpc-1.4.jar**:这个jar包是Apache Axis的一部分,它实现了JAX-RPC(Java API ...
用AXIS2作为客户端调用webService的demo:亲测可用,eclipse工程java项目包含完整代码和完整jar包, 只要用eclipse导入项目即可,运行控制台显示success或者false字符串,说明OK。
要深入学习这个主题,可以参考博客“WebService:Axis客户端调用需要身份验证的CXF服务”。这个博客很可能详细解释了如何在实际代码中实现上述步骤,包括如何配置Axis客户端、如何处理认证头以及如何与CXF服务进行...
之前webservice客户端调用,使用RPC客戶端接口调用方法,但发现此种调用方式针对携参方式并不适用。最后经过多种方式测试选择了OMFactory......调用。经测试好用
Java调用WebService是Web服务交互的一种常见方式,而Axis2是一个高效的、可扩展的Web服务框架,它在Java世界中广泛用于创建和消费Web服务。本文将深入探讨使用Axis2.jar包来调用WebService的相关知识点。 一、Axis2...
Java Axis调用WebService服务端是Java开发者在进行分布式系统交互时常见的一种技术实践。Axis是Apache软件基金会开发的一个开源项目,它提供了一种方便、高效的方式,使得Java应用程序能够作为客户端来消费或作为...
标题“Axis2教程和java调用webservice的各种方法总结”表明了本文档主要聚焦于两个核心内容:一是Axis2框架的使用教程,二是Java语言调用Web服务的不同方法的综合概述。 描述中的“Axis2教程”暗示了会详细讲解Axis...
Axis2是Apache软件基金会开发的一个Web服务框架,它提供了动态调用Web服务的能力。本文将深入探讨如何使用Axis2来动态地调用Web Service,并通过分析`WebServiceInvoker.java`这个文件来理解其实现原理。 1. **Java...
本文将详细介绍如何使用Apache Axis库在Java环境中调用WebService。 首先,理解WebService的基本概念。WebService是一种基于开放标准(如WSDL、SOAP和XML)的Web应用程序,它提供了一种在不同系统间交换数据的方法...
本篇文章将详细解析如何使用Java通过Axis客户端调用WebService,以及如何搭建和配置Axis服务器端。 一、Axis简介 Axis是一个基于Java的SOAP(简单对象访问协议)栈,它提供了从Java类生成Web服务和从WSDL(Web服务...
使用axis2创建webservice步骤以及客户端调用service服务代码,如何编写和发布WebService,如何使用services.xml配置文件发布,如何用Java实现调用WebService的客户端程序等等
5. **客户端调用**: 对于客户端,我们同样可以使用Axis的工具,如java2wsdl,生成客户端的Stub代码,这样就可以在客户端应用程序中直接调用Web服务方法,如同调用本地方法一样。对于复杂对象,客户端需要创建相应...