Java HTTPUrlConnection的Post方法导致TCP连接的SocketTimeoutException、CLOSE\u等待状态

Java HTTPUrlConnection的Post方法导致TCP连接的SocketTimeoutException、CLOSE\u等待状态,java,post,tcp,tomcat7,httpurlconnection,Java,Post,Tcp,Tomcat7,Httpurlconnection,我使用的是Tomcat 7.0.59,在使用GET方法打开连接时,我能够从服务器获得响应。但是,POST请求将挂起,直到超时发生。在运行netstat-nat | grep CLOSE(u WAIT)时,我在这种状态下获得tcp连接 Caused by: java.net.SocketTimeoutException: Read timed out at java.net.SocketInputStream.socketRead0(Native Method) at java.net.Socke

我使用的是Tomcat 7.0.59,在使用
GET
方法打开连接时,我能够从服务器获得响应。但是,
POST
请求将挂起,直到超时发生。在运行netstat-nat | grep CLOSE(u WAIT)时,我在这种状态下获得tcp连接

Caused by: java.net.SocketTimeoutException: Read timed out
at java.net.SocketInputStream.socketRead0(Native Method)
at java.net.SocketInputStream.read(SocketInputStream.java:152)
at java.net.SocketInputStream.read(SocketInputStream.java:122)
at sun.security.ssl.InputRecord.readFully(InputRecord.java:442)
at sun.security.ssl.InputRecord.read(InputRecord.java:480)
at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:927)
at sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:884)
at sun.security.ssl.AppInputStream.read(AppInputStream.java:102)
at java.io.BufferedInputStream.fill(BufferedInputStream.java:235)
at java.io.BufferedInputStream.read1(BufferedInputStream.java:275)
at java.io.BufferedInputStream.read(BufferedInputStream.java:334)
at sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:687)
at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:633)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1323)
at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468)
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)

因此,当您捕获
SocketTimeoutException时,您没有关闭输入流。
我正在关闭finally块中使用的输入/输出流