8304962: sun/net/www/http/KeepAliveCache/B5045306.java: java.lang.RuntimeException: Failed: Initial Keep Alive Connection is not being reused
Reviewed-by: jpai
This commit is contained in:
parent
a06f46196a
commit
cddaf686e1
@ -31,7 +31,7 @@
|
||||
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.io.PrintWriter;
|
||||
import java.io.OutputStream;
|
||||
import java.lang.management.ManagementFactory;
|
||||
import java.lang.management.ThreadInfo;
|
||||
import java.lang.management.ThreadMXBean;
|
||||
@ -40,7 +40,6 @@ import java.net.InetAddress;
|
||||
import java.net.InetSocketAddress;
|
||||
import java.net.Proxy;
|
||||
import java.net.URL;
|
||||
import java.nio.charset.Charset;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.concurrent.Executors;
|
||||
@ -175,9 +174,9 @@ class SimpleHttpTransactionHandler implements HttpHandler
|
||||
byte[] responseBody = new byte[RESPONSE_DATA_LENGTH];
|
||||
for (int i=0; i<responseBody.length; i++)
|
||||
responseBody[i] = 0x41;
|
||||
trans.sendResponseHeaders(200, 0);
|
||||
try(PrintWriter pw = new PrintWriter(trans.getResponseBody(), false, Charset.forName("UTF-8"))) {
|
||||
pw.print(responseBody);
|
||||
trans.sendResponseHeaders(200, responseBody.length);
|
||||
try (OutputStream os = trans.getResponseBody()) {
|
||||
os.write(responseBody);
|
||||
}
|
||||
} else if (path.equals("/secondCall")) {
|
||||
int port2 = trans.getRemoteAddress().getPort();
|
||||
@ -200,10 +199,10 @@ class SimpleHttpTransactionHandler implements HttpHandler
|
||||
responseBody[i] = 0x41;
|
||||
// override the Content-length header to be greater than the actual response body
|
||||
trans.sendResponseHeaders(200, responseBody.length+1);
|
||||
try(PrintWriter pw = new PrintWriter(trans.getResponseBody(), false, Charset.forName("UTF-8"))) {
|
||||
pw.print(responseBody);
|
||||
}
|
||||
OutputStream os = trans.getResponseBody();
|
||||
os.write(responseBody);
|
||||
// now close the socket
|
||||
// closing the stream here would throw; close the exchange instead
|
||||
trans.close();
|
||||
}
|
||||
} catch (Exception e) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user