我正在尝试使用Camel 2.11.1 http组件从Soap Web服务获得响应。它正常工作正常。但是,如果我将它保持闲置30分钟并重试相同的请求,它会挂起并在几分钟之后抛出SocketException:
java.net.SocketException: Connection timed out
at java.net.SocketInputStream.socketRead0(Native Method) ~[na:1.7.0_55]
at java.net.SocketInputStream.read(SocketInputStream.java:152) ~[na:1.7.0_55]
at java.net.SocketInputStream.read(SocketInputStream.java:122) ~[na:1.7.0_55]
at sun.security.ssl.InputRecord.readFully(InputRecord.java:442) ~[na:1.7.0_55]
at sun.security.ssl.InputRecord.read(nInputRecord.java:480) ~[na:1.7.0_55]
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:927) ~[na:1.7.0_55]
有人能建议解决这种奇怪的行为吗? Soap Web服务托管在Consumer端,不可用。我尝试从wireshark获取tcpdump,它显示重传数据包。但是,如果我将系统闲置30分钟以用于其他服务,我就不会遇到这个问题。