`
Nick_HF
  • 浏览: 8466 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
最近访客 更多访客>>
社区版块
存档分类
最新评论

客户端调用WebService服务(Axis)

阅读更多
方法一:
静态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();

        }

    }

}

分享到:
评论

相关推荐

    axis客户端调用webservice

    java axis客户端调用webservice,可应用于ofbiz框架。 解决网络上共享代码两次调用后会出现timeout的BUG

    AXIS2作为客户端调用webService的demo

    用AXIS2作为客户端调用webService的demo:本人亲测可用,eclipse工程java项目包含完整代码和完整jar包, 只要用eclipse导入项目即可,运行控制台显示success或者false字符串,说明OK。

    axis2客户端调用webService接口,精简jar包

    本文将深入探讨如何使用Axis2客户端调用WebService接口,并且会特别关注如何精简所需的jar包。 首先,了解Axis2客户端的基本概念是至关重要的。Axis2客户端是用于与远程Web服务交互的工具,它允许开发者通过SOAP...

    java客户端调用webservice所调用的axis1.4包和方法调用

    本方法是用axis1.4技术,实现java客户端调用webservice。已经可实现过可行的,如果不行可加我QQ号302633进行详细解析。

    axis2客户端调用axis1服务接口

    axis2客户端调用axis1服务接口 调用方式 使用RPC方式调用WebService,为了防止冲突可以增加 // 与weblogic的lib冲突配置 System.setProperty("javax.xml.stream.XMLInputFactory", ...

    axis2发布webservice和调用axis2服务接口

    本文将详细讲解如何使用Axis2来发布Web服务以及如何生成客户端代码来调用这些服务。 首先,让我们了解发布Web服务的过程: 1. **创建WebService**:在Axis2中,可以通过编写一个简单的Java类并暴露其方法作为Web...

    Xfire客户端调用webservice jar包

    在这个场景下,"Xfire客户端调用webservice jar包"是指Xfire客户端为了实现某些功能,如获取服务器数据或更新信息,需要调用Web服务的接口。这些接口通常以Java的jar包形式提供,方便开发者集成到他们的应用中。 ...

    客户端调用webservice所需完整jar包

    在客户端调用WebService时,这个库用于解析服务的WSDL文件,从而生成相应的代理类,使得客户端代码能够方便地调用服务。 3. **axis-jaxrpc-1.4.jar**:这个jar包是Apache Axis的一部分,它实现了JAX-RPC(Java API ...

    axis2客户端调用webService的DEMO

    用AXIS2作为客户端调用webService的demo:亲测可用,eclipse工程java项目包含完整代码和完整jar包, 只要用eclipse导入项目即可,运行控制台显示success或者false字符串,说明OK。

    WebService:Axis客户端调用需要身份验证的CXF服务

    要深入学习这个主题,可以参考博客“WebService:Axis客户端调用需要身份验证的CXF服务”。这个博客很可能详细解释了如何在实际代码中实现上述步骤,包括如何配置Axis客户端、如何处理认证头以及如何与CXF服务进行...

    webservice-axis2客户端调用(多参).txt

    之前webservice客户端调用,使用RPC客戶端接口调用方法,但发现此种调用方式针对携参方式并不适用。最后经过多种方式测试选择了OMFactory......调用。经测试好用

    java调用webservice的axis2.jar包

    Java调用WebService是Web服务交互的一种常见方式,而Axis2是一个高效的、可扩展的Web服务框架,它在Java世界中广泛用于创建和消费Web服务。本文将深入探讨使用Axis2.jar包来调用WebService的相关知识点。 一、Axis2...

    java axis 调用webservice服务端

    Java Axis调用WebService服务端是Java开发者在进行分布式系统交互时常见的一种技术实践。Axis是Apache软件基金会开发的一个开源项目,它提供了一种方便、高效的方式,使得Java应用程序能够作为客户端来消费或作为...

    Axis2教程和java调用webservice的各种方法总结

    标题“Axis2教程和java调用webservice的各种方法总结”表明了本文档主要聚焦于两个核心内容:一是Axis2框架的使用教程,二是Java语言调用Web服务的不同方法的综合概述。 描述中的“Axis2教程”暗示了会详细讲解Axis...

    Java动态调用webService,axis2动态调用webService

    Axis2是Apache软件基金会开发的一个Web服务框架,它提供了动态调用Web服务的能力。本文将深入探讨如何使用Axis2来动态地调用Web Service,并通过分析`WebServiceInvoker.java`这个文件来理解其实现原理。 1. **Java...

    JAVA调用WebService(Axis)

    本文将详细介绍如何使用Apache Axis库在Java环境中调用WebService。 首先,理解WebService的基本概念。WebService是一种基于开放标准(如WSDL、SOAP和XML)的Web应用程序,它提供了一种在不同系统间交换数据的方法...

    java调用webservice axis 客户端 服务器端 包含jar包

    本篇文章将详细解析如何使用Java通过Axis客户端调用WebService,以及如何搭建和配置Axis服务器端。 一、Axis简介 Axis是一个基于Java的SOAP(简单对象访问协议)栈,它提供了从Java类生成Web服务和从WSDL(Web服务...

    使用axis2创建webservice步骤以及客户端调用service服务代码

    使用axis2创建webservice步骤以及客户端调用service服务代码,如何编写和发布WebService,如何使用services.xml配置文件发布,如何用Java实现调用WebService的客户端程序等等

    webservice之axis实例,axis复杂对象

    5. **客户端调用**: 对于客户端,我们同样可以使用Axis的工具,如java2wsdl,生成客户端的Stub代码,这样就可以在客户端应用程序中直接调用Web服务方法,如同调用本地方法一样。对于复杂对象,客户端需要创建相应...

Global site tag (gtag.js) - Google Analytics