文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

SocketTimeoutException:Read timed out问题解决org.apache.cxf.interceptor.Fault:Could not receive Message

2023-08-19 08:00

关注

问题描述

利用WebService给其它服务器地址发送请求时,遇到了一个报错:org.apache.cxf.interceptor.Fault:Could not receive Message。控制台上显示:java.net.SocketTimeoutException:Read timed out。搜了一下发现网上大部分是分享org.apache.cxf.interceptor.Fault:Could not send Message。发送问题的,很少有关于接收报错的。本文就是介绍如何解决这个问题的。


一、WebService是什么?

简单说:WebService可以将你的服务(一段代码)发布到互联网上让别人去调用,也可以调用别人机器上发布的WebService,就像使用自己的代码一样.

详细介绍: WebService详解

二、问题解决

1.问题分析

以下内容来自: CXF客户端配置请求超时限制

在Spring+CXF的WebService环境下,客户端有两个时间属性是可配置的,分别是ConnectionTimeout和ReceiveTimeout.
ConnectionTimeout–WebService以TCP连接为基础,这个属性可以理解为tcp的握手时的时间设置,超过设置的时间长则认为是连接超时.以毫秒为单位,默认是30000毫秒,即30秒.
ReceiveTimeout – 这个属性是发送WebService的请求后等待响应的时间,超过设置的时长就认为是响应超时.以毫秒为单位,默认是60000毫秒,即60秒.
出现java.net.SocketTimeoutException:Read timed out。说明发送或接收时等待的时间过长,超过了限制就会报错。

2.解决办法

(1)延长响应时间限制

可能出现以下几种情况
(1)有时候网络会存在波动情况
(2)传输的数据量过大
(3)服务器响应时间过长
因此,我们可以适当延长请求等待响应时间,来解决以上问题

Java代码如下:

Client client = ClientProxy.getClient(port);     HTTPConduit http = (HTTPConduit) client.getConduit();     HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy();//均以毫秒为单位     httpClientPolicy.setConnectionTimeout(60000);     httpClientPolicy.setAllowChunking(false);     httpClientPolicy.setReceiveTimeout(120000);     http.setClient(httpClientPolicy);

(2)联系服务器使用方解决

我遇到的报错是:org.apache.cxf.interceptor.Fault:Could not receive Message显示无法接收信息,不是无法发送信息。我这边报错了联系了服务器使用方,他们那边显示已经接收到了我发送的请求,是他们的服务器没有响应我这边的服务器才会报错。他们在调试后,让我重新发送请求,我尝试发送请求后就不再报org.apache.cxf.interceptor.Fault:Could not receive Message问题了。因此,出现这个问题的小伙伴可以尝试联系服务器使用方解决。
当然,联系前要确定:
(1)自己发送的参数信息没有问题,符合接口规范要求
(2)请求已经发送出去(关键)。要确保自己的请求发送出去了,是他们的响应问题。

总结

我遇到的是一个很小众的问题,大多数开发者应该遇到的是发不出去请求,而我遇到的是接收不到请求。
我这次分享的经验仅供大家参考,希望对大家有所帮助!

来源地址:https://blog.csdn.net/qq_46119575/article/details/128506936

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     807人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     351人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     314人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     433人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     221人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-服务器
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯