首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Unable to sendViaPost - on Axis2客户端桩模块

Unable to sendViaPost - on Axis2客户端桩模块
EN

Stack Overflow用户
提问于 2012-06-28 23:44:53
回答 1查看 2.4K关注 0票数 0

我正在使用一个用wsdl2java生成的Axis2 (1.6.1) java客户端。

它似乎工作得很好,但有时我会收到以下错误:

14:38:04,855信息HTTPSender Unable to sendViaPost to url...

代码语言:javascript
复制
java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:168)
at com.sun.net.ssl.internal.ssl.InputRecord.readFully(InputRecord.java:293)
at com.sun.net.ssl.internal.ssl.InputRecord.read(InputRecord.java:331)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:798)
at com.sun.net.ssl.internal.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:755)
at com.sun.net.ssl.internal.ssl.AppInputStream.read(AppInputStream.java:75)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:218)
at java.io.BufferedInputStream.read(BufferedInputStream.java:237)
at org.apache.commons.httpclient.HttpParser.readRawLine(HttpParser.java:78)
at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:106)

我想知道这是否可能是一个多线程问题,并希望得到一些关于这个问题的答案。我使用一个存根来缓存HttpClient。HttpClient使用MultiThreadedHttpConnectionManager,我将setDefaultMaxConnectionsPerHost设置为20。

我知道,凭借关联的MultiThreadedHttpConnectionManager,HttpClient将是线程安全的。问题是Axis2存根会发生什么情况?存根也是线程安全的吗?

我看过一些帖子说Axis存根在设计上不是线程安全的。如果是这样,那么使用多线程HttpClient有什么好处呢?如何确保Axis客户端存根在多线程环境中可用?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2012-06-30 18:11:12

“连接重置”错误表示服务器意外关闭了连接。当您收到该错误时,问题出在远程服务器,而不是您的客户端。

MultiThreadedHttpConnectionManager是一个用于超文本传输协议连接的多线程安全缓存。多个线程可以从缓存中获取连接,或者将它们返回到缓存,而不会使缓存成为瓶颈。单个HttpClient或拥有HttpClient的存根一次只能由一个线程使用。HttpClient拥有到远程服务器的实际TCP连接,并且该连接一次仅支持一个正在进行的请求。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11248214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档