`

[转]Spring下设置CXF的WebService客户端超时时长

 
阅读更多

主要在客户端调用时设置 :    

  1. 在使用WebService的时候,我们可能需要一个备份的WebService服务器.一旦主服务器down,我们可以使用备份的服务器.那么这里就需要对客服端连接服务器的时间做一个修改.   
  2.   
  3. Spring+CXFWebService环境下,客户端有两个时间属性是可配置的,分别是ConnectionTimeoutReceiveTimeout.   
  4. ConnectionTimeout--WebServiceTCP连接为基础,这个属性可以理解为tcp的握手时的时间设置,超过设置的时间长则认为是连接超时.以毫秒为单位,默认是30000毫秒,30.   
  5.   
  6. ReceiveTimeout -- 这个属性是发送WebService的请求后等待响应的时间,超过设置的时长就认为是响应超时.以毫秒为单位,默认是60000毫秒,60.   
  7.   
  8. beans.xml 设置的例子:   
  9. <?xml version="1.0" encoding="UTF-8"?>  
  10. <beans xmlns="http://www.springframework.org/schema/beans"  
  11.     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  
  12.     xmlns:jee="http://www.springframework.org/schema/jee"  
  13.     xmlns:jaxws="http://cxf.apache.org/jaxws"  
  14.     xmlns:http-conf="http://cxf.apache.org/transports/http/configuration"    
  15.     xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd   
  16.            http://www.springframework.org/schema/jee http://www.springframework.org/schema/jee/spring-jee-2.0.xsd   
  17.            http://cxf.apache.org/jaxws http://cxf.apache.org/schemas/jaxws.xsd   
  18.            http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd ">  
  19.         <http-conf:conduit name="{http://impl.service.product.super.com/}ProjectService.http-conduit">    
  20.         <http-conf:client ConnectionTimeout="10000" ReceiveTimeout="20000"/>  
  21.     </http-conf:conduit>    
  22. </beans>  
  23.   
  24.   
  25.   
  26. 这里需要注意的有几个地方:   
  27. 1:需要指定http-conf名称空间 xmlns:http-conf=http://cxf.apache.org/transports/http/configuration   
  28. 2:指定模式位置: http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd   
  29. 3:http-conf:conduit中的name属性,指定设置生效的服务,如例子中,只对服务名为{http://impl.service.product.sww.com/}ProjectService的服务生效.   
  30. 使用下面的设置则会对所有服务生效   
  31. <http-conf:conduit name="*.http-conduit">  
  32.          <http-conf:client……>
  33. </http-conf:conduit>  
  34.   
  35.   
  36. 更详细的配置请参考CXF官方文档:   
  37.   
  38. http://cwiki.apache.org/CXF20DOC/client-http-transport-including-ssl-support.html  

 

`2.代码编写:

    private static void recieveTimeOutWrapper(Object o)  

     {  

         Conduit conduit = (ClientProxy.getClient(o).getConduit());  

         HTTPConduit hc = (HTTPConduit)conduit;  

         HTTPClientPolicy client = new HTTPClientPolicy();  

         client.setReceiveTimeout(1000 * 60 * 5); // 5分钟超时时间。 该时间为响应超时。  

          // client.setConnectionTimeout(1000 * 45); // 45秒的连接超时。  

         hc.setClient(client);  

     } 

 

recieveTimeOutWrappero  包装每一个服务

分享到:
评论

相关推荐

    CXF动态webservice客户端demo

    7. **配置和优化**:CXF支持多种配置,例如设置超时、安全认证、日志等,这可以通过Spring配置文件或编程式方式进行。 在"DynamicClientDemo"项目中,你可以看到如何将这些步骤整合到实际应用中,包括如何初始化...

    springboot整合CXF发布webservice和客户端调用

    SpringBoot简化了Spring应用程序的初始设置和配置,通过自动配置和“起步依赖”(Starter POMs)使开发者可以快速启动项目。它内嵌了Tomcat或Jetty服务器,使得部署无需额外的容器。 2. **Apache CXF简介** ...

    spring+CXF实现WebService(http+https)

    Spring框架是Java企业级应用开发的首选,而CXF是一个强大的开源服务框架,支持创建和消费Web服务。本教程将深入探讨如何利用Spring和CXF来实现基于HTTP和HTTPS的Web服务,并且将涉及到HTTPS的证书配置。 1. **...

    CXF 一个完整的webService(整合客户端和服务端)

    - **客户端代理**:CXF自动生成客户端代码,方便调用服务。 **2. 创建Web服务端** 在CXF中,服务端的开发通常涉及以下步骤: 1. 定义服务接口:使用Java接口定义服务方法。 2. 实现服务接口:编写具体的业务逻辑...

    使用cxf和spring开发基于https的webservice服务端以及客户端样例

    服务端的实现类可以被Spring管理,利用注解如`@WebService`和`@Endpoint`进行标记。同时,配置HTTPS需要在CXF的Servlet配置中启用SSL,指定密钥库路径和密码。 客户端开发相对简单,它通过CXF的WSClientAPI动态生成...

    Apache CXF2+Spring2.5轻松实现WebService

    本教程将深入探讨如何利用Apache CXF 2与Spring 2.5来构建和使用WebService。 首先,让我们理解这两个组件的基本概念。Apache CXF是一个全面的服务框架,它支持多种Web服务规范,如SOAP、RESTful、WS-*等。它提供了...

    Springboot整合CXF发布Web service和客户端调用(用户和密码验证)

    在IT行业中,Spring Boot是一个非常流行的微服务框架,它简化了Spring应用的初始化和配置。而Apache CXF则是一个强大的Web服务框架,用于创建和消费Web服务。本教程将详细介绍如何利用Spring Boot与CXF进行集成,以...

    cxf开发webservice客户端和服务器端文档

    cxf开发webservice客户端和服务器端 cxf(Apache CXF)是一款开源的WebService框架,用于开发webservice客户端和服务器端。它提供了许多有用的功能,如自动生成服务桩、客户调用桩和WSDL文档等,使得开发webservice...

    Spring+CXF 发布WebService服务

    本文将深入探讨如何使用Spring和CXF来发布WebService服务。 首先,Spring是一个开源的Java平台,它提供了全面的编程和配置模型,用于简化企业级应用的开发。Spring框架的核心特性包括依赖注入、面向切面编程(AOP)...

    CXF开发webservice客户端

    本文档将详细介绍如何使用 Apache CXF 2.2.6 和 Spring WS 1.5.8 构建一个简单的 WebService 客户端。通过本教程,您将能够掌握从创建工程到实际调用 Web 服务的一系列步骤。 #### 二、开发环境搭建 1. **Apache ...

    cxf+spring开发webservice客户端与服务端实例

    2. 配置Spring:在Spring配置文件中,配置客户端的代理对象,设置服务的URL和其他相关参数。 3. 调用服务:在Java代码中,通过Spring注入的客户端代理对象调用服务方法,执行业务逻辑。 五、集成步骤 1. 添加依赖:...

    webservice客户端,整合spring

    本知识点将深入探讨如何在Spring框架中整合CXF,以创建一个有效的Webservice客户端。 1. **什么是Web Service**: Web Service是一种基于XML的开放标准,它允许应用程序通过网络共享业务逻辑,不受平台限制。SOAP...

    spring-cxf WebService

    【Spring-CXF WebService】是基于Spring框架和Apache CXF实现的一个Web服务示例,它展示了如何在Spring环境中集成CXF来创建、部署和消费Web服务。Spring-CXF结合了Spring的强大功能和CXF的优秀Web服务支持,使得开发...

    webservice的cxf框架客户端调用所需jar包

    CXF框架是Apache组织开发的一款开源的Web服务框架,它支持SOAP、RESTful...在实际项目中,将这些JAR包放入项目的`lib`目录下,确保了所有必要的依赖都被正确加载,从而能够顺利地使用CXF框架进行Web服务的客户端调用。

    Spring+cxf请求webService

    2. **CXF WebService客户端创建** 创建CXF客户端通常包括以下步骤: - 首先,获取Web服务的WSDL(Web Service Definition Language)文件,它是描述Web服务接口的标准XML文档。 - 使用CXF的Wsdl2Java工具,...

    基于spring+cxf实现用户文件传输的webservice

    基于spring+cxf实现用户文件传输的webservice 在本文中,我们将探讨如何使用Spring+CXF实现用户文件传输的Webservice。该Webservice提供了基本的报文上传和查询功能,同时还提供了用户身份验证功能。 Spring 和 ...

    CXF WebService整合Spring代码(包含服务,客户端两个工程 和 文档)

    CXF WebService整合Spring代码(包含服务,客户端两个工程 和 文档) 需要视频的话,留邮箱

    idea + spring4.3.7.RELEASE+cxf3.1.0整合+客户端调用

    本教程将围绕"idea + spring4.3.7.RELEASE + cxf3.1.0"的整合进行详细讲解,旨在帮助开发者理解如何在IDEA(IntelliJ IDEA)环境中搭建一个基于Maven的Spring MVC项目,并结合Apache CXF实现Web服务的消费与提供。...

    Spring2+CXF实现webservice笔记

    ### Spring2 + CXF 实现 WebService 的关键知识点 #### 一、概述 在现代软件架构设计中,WebService 是一种非常重要的技术手段,它能够帮助开发者实现不同系统间的交互和服务共享。Spring 框架与 Apache CXF 结合...

Global site tag (gtag.js) - Google Analytics