代码如下
service = (T) new XFireProxyFactory().create(serviceModel, url);
int TIMEOUT = 10000;
HttpClientParams params = new HttpClientParams();
params
.setParameter(HttpClientParams.USE_EXPECT_CONTINUE,
Boolean.FALSE);
params.setParameter(HttpClientParams.CONNECTION_MANAGER_TIMEOUT,
Long.parseLong(TIMEOUT+""));
params.setParameter(HttpClientParams.SO_TIMEOUT, TIMEOUT);
Client client = Client.getInstance(service);
client.setTimeout(TIMEOUT);
client.setProperty(CommonsHttpMessageSender.HTTP_CLIENT_PARAMS, params);
client.setProperty(CommonsHttpMessageSender.HTTP_TIMEOUT, TIMEOUT+"");
client.setProperty(CommonsHttpMessageSender.DISABLE_EXPECT_CONTINUE,
"true");
client.setProperty(CommonsHttpMessageSender.DISABLE_KEEP_ALIVE, "true");
但是 超时不起作用
页面上仍然长时间的载入中 且控制台日志如下:
2011-01-24 15:55:11,361 INFO [HttpMethodDirector.java:434] : I/O exception caught when processing request: Connection timed out
2011-01-24 15:55:11,362 INFO [HttpMethodDirector.java:440] : Retrying request
2011-01-24 15:58:20,350 INFO [HttpMethodDirector.java:434] : I/O exception caught when processing request: Connection timed out
2011-01-24 15:58:20,351 INFO [HttpMethodDirector.java:440] : Retrying request
2011-01-24 16:01:29,338 INFO [HttpMethodDirector.java:434] : I/O exception caught when processing request: Connection timed out
2011-01-24 16:01:29,339 INFO [HttpMethodDirector.java:440] : Retrying request
2011-01-24 16:04:38,327 ERROR [HttpChannel.java:144] : java.net.ConnectException: Connection timed out
org.codehaus.xfire.XFireRuntimeException: Could not invoke service.. Nested exception is org.codehaus.xfire.fault.XFireFault: Couldn't send message.
org.codehaus.xfire.fault.XFireFault: Couldn't send message.
似乎隔三分钟 就去连接一下 第四次终于放弃了
分享到:
相关推荐
正确配置超时设置能够帮助提高应用的健壮性,避免由于网络不稳定或服务器响应慢导致的长时间等待。同时,需要注意根据实际业务需求和网络环境调整超时值,以达到最佳的性能平衡。在某些场景下,可能还需要结合重试...
Web服务中XFire的配置和在客户端的配置,图解说明Web服务中XFire的配置和在客户端的配置,图解说明Web服务中XFire的配置和在客户端的配置,图解说明Web服务中XFire的配置和在客户端的配置,图解说明Web服务中XFire的...
7. **测试Web服务**:部署完成后,你可以通过发送SOAP请求或者使用Web服务客户端工具(如SoapUI)来测试你的Web服务是否正常工作。 在JBoss 5.1中运行XFire生成的Web服务,需要注意的是,JBoss版本与XFire的兼容性...
其次,XFire可以配置为只接受经过Spring Security认证的请求,这样可以确保只有合法的客户端才能访问服务。 在实际操作中,我们可能需要以下步骤: 1. 配置Spring Security:定义用户、角色和权限,设置认证和授权...
Xfire API 是一款专为游戏社区设计的接口,它允许开发者构建与Xfire服务交互的应用程序,从而增强玩家的游戏体验并提供社交功能。Xfire API 主要围绕Web服务概念,这意味着它通过网络提供一系列功能,使得第三方...
1. 创建客户端代理:XFire使用WSDL文档生成客户端代理类。这个代理类提供了服务方法的直接访问,就像调用本地方法一样。可以使用XFire的wsdl2java工具自动生成这些代理类。 2. 初始化代理:在调用服务之前,需要...
需要注意的是,实际应用中可能需要处理异常、配置认证信息以及调整请求超时等高级设置。此外,随着技术的发展,XFire 已经被 Apache CXF 所取代,虽然本文是关于 XFire 的,但现代的 Java 开发更倾向于使用 CXF 或...
7. **配置和优化**:CXF支持多种配置,例如设置超时、安全认证、日志等,这可以通过Spring配置文件或编程式方式进行。 在"DynamicClientDemo"项目中,你可以看到如何将这些步骤整合到实际应用中,包括如何初始化...
xfire工具则进一步简化了这一过程,提供了批量生成fetch接口的能力,使得开发者可以快速构建和维护API客户端。 xfire的核心特性包括: 1. **高度可配置**:xfire允许用户自定义接口生成的规则,比如URL模板、请求...
通常会创建一个服务接口,定义上传和下载方法,然后通过XFire的客户端API实现这些接口。例如,你可以定义一个`UploadImageService`接口,包含`uploadImage(Bitmap image)`和`downloadImage(String imageUrl)`这样的...
3. **XFire框架使用**:XFire提供客户端和服务端API,用于创建、调用Web服务。在客户端,可以创建一个XML或Java对象,然后序列化为HTTP请求发送到服务器;服务端接收请求后反序列化,执行对应的操作。在这个项目中,...
虽然在Android中直接使用XFire可能不太常见,但在Java服务器端,XFire可以方便地创建Webservice接口,并提供客户端工具生成客户端代码。在Android应用中,你可以使用XFire生成的客户端jar包,直接调用预先定义好的...
- 在Spring配置文件中,定义一个`jaxws:client` bean,指定服务地址、服务接口和代理类,配置连接超时、重试策略等参数。 3. **XML请求与响应处理** 在Spring+CXF的环境中,XML请求通常是通过Java对象转换得到的...
3. **生成客户端代理**:一旦Web服务部署完成,MyEclipse可以生成Java客户端代理类,这些类包含了调用Web服务的API,方便Android客户端使用。 **四、Android与Web服务的交互** 1. **添加依赖**:在Android项目中,...
在开发过程中,调试HTTPS连接可能遇到的问题包括证书不受信任、网络连接超时、数据解析错误等。解决这些问题通常需要检查服务器证书、网络配置、代码逻辑以及API文档。 总的来说,调用HTTPS格式的Web Service涉及到...
然后,`getClient().invoke("invokeMethodAutoExcute", new String[]{clazz})`使用XFIRE客户端调用名为`invokeMethodAutoExcute`的远程方法,并传入类名作为参数。 如果远程调用成功,结果会被存储在`objs`数组中,...
在这个目录中,开发者可以找到关于如何使用HttpSession对象存储和检索数据的示例,同时可能还会涉及到session的管理,如设置超时、会话复制和粘滞会话等。 4. **servlet**:Servlet是Java Web应用程序的核心部分,...