Java “线程中的异常”;“主要”;org.apache.axis2.AxisFault:读取超时

Java “线程中的异常”;“主要”;org.apache.axis2.AxisFault:读取超时,java,eclipse,axis2,Java,Eclipse,Axis2,我编写了一个web服务,web客户端是使用Eclipse向导生成的。 我的客户端应用程序正在请求一个字符串和一个对象。 可以成功检索字符串,当我尝试检索对象时,它会出现以下异常(我使用的是JBoss 5): 我找不到出路,请帮助我。我只能从您放置的唯一异常堆栈跟踪中提供帮助 异常的根源是: 原因:java.net.SocketTimeoutException:读取超时 这意味着套接字尝试读取或接受时发生超时。在您的情况下,存在读取超时 您需要确定服务服务器盒的套接字超时是多少,如果可以的话,让它

我编写了一个web服务,web客户端是使用Eclipse向导生成的。 我的客户端应用程序正在请求一个
字符串
和一个
对象
。 可以成功检索字符串,当我尝试检索对象时,它会出现以下异常(我使用的是JBoss 5):


我找不到出路,请帮助我。

我只能从您放置的唯一异常堆栈跟踪中提供帮助

异常的根源是:

原因:java.net.SocketTimeoutException:读取超时

这意味着套接字尝试读取或接受时发生超时。在您的情况下,存在读取超时


您需要确定服务服务器盒的套接字超时是多少,如果可以的话,让它无限期地激活。

最后我可以解决这个问题。我的对象是一个包含其他对象的对象。然后我构造了一个带有字符串和int的单对象,并且可以成功发送


谢谢…

我在一个项目中遇到了这个错误,根本原因是代理服务器设置。我必须修改代理,以允许与我试图访问的服务进行通信。我的代码作为使用自己的代理的自定义应用程序的一部分运行。因此,这也可能是值得尝试的。

我们遇到了类似的问题,我们在尝试调用安全的Web服务时出现了读取超时,经过长期分析,我们发现传输协议版本不匹配。Web服务在http1.0上提供服务,我们使用http1.1调用它。我们修改了客户端代码中的协议版本,解决了此问题:


下面是指定http版本-1.0 options.setProperty(org.apache.axis2.transport.http.HTTPConstants.http_PROTOCOL_version,org.apache.axis2.transport.http.HTTPConstants.HEADER_PROTOCOL_10)的代码

您是否知道要检索的对象的大小?请同时检查为该对象提供服务的服务器端代码处理该对象的时间是否过长。您能否提供更多详细信息?我有一个samer错误,这让我抓狂…如何增加超时?有ajax2设置吗?@Danijel展示了如何设置。
Exception in thread "main" org.apache.axis2.AxisFault: Read timed out
at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:203)
at org.apache.axis2.transport.http.HTTPSender.send(HTTPSender.java:76)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.writeMessageWithCommons(CommonsHTTPTransportSender.java:400)
at org.apache.axis2.transport.http.CommonsHTTPTransportSender.invoke(CommonsHTTPTransportSender.java:225)
at org.apache.axis2.engine.AxisEngine.send(AxisEngine.java:435)
at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:402)
at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:229)
at org.apache.axis2.client.OperationClient.execute(OperationClient.java:165)
at se.cambio.cimonitor.ws.implmnt.GetDataStub.retrieveDetails(GetDataStub.java:203)
at se.cambio.cimonitor.ws.client.WebServiceClient.main(WebServiceClient.java:44)
Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:129)
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:77)
at org.apache.commons.httpclient.HttpParser.readLine(HttpParser.java:105)
at org.apache.commons.httpclient.HttpConnection.readLine(HttpConnection.java:1115)
at org.apache.commons.httpclient.MultiThreadedHttpConnectionManager$HttpConnectionAdapter.readLine(MultiThreadedHttpConnectionManager.java:1373)
at org.apache.commons.httpclient.HttpMethodBase.readStatusLine(HttpMethodBase.java:1832)
at org.apache.commons.httpclient.HttpMethodBase.readResponse(HttpMethodBase.java:1590)
at org.apache.commons.httpclient.HttpMethodBase.execute(HttpMethodBase.java:995)
at org.apache.commons.httpclient.HttpMethodDirector.executeWithRetry(HttpMethodDirector.java:397)
at org.apache.commons.httpclient.HttpMethodDirector.executeMethod(HttpMethodDirector.java:170)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:396)
at org.apache.commons.httpclient.HttpClient.executeMethod(HttpClient.java:346)
at org.apache.axis2.transport.http.AbstractHTTPSender.executeMethod(AbstractHTTPSender.java:560)
at org.apache.axis2.transport.http.HTTPSender.sendViaPost(HTTPSender.java:199)