<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p>
</p>
<div class="moz-text-html" lang="x-unicode">
<div class="WordSection1">
<p class="MsoNormal" style="text-autospace:none"><b><span
style="font-size: 10pt; font-family: Consolas;"
lang="EN-US">Hi,</span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US"><font color="#000000">i found an bug in JDK
10 with the new HttpClient. It does not handle responses
wihtout contentlength correctly.<br>
Normally i would expect that the content is returned
even without content length. Since i can not open an JDK
bug<br>
i hope some person from the list can do it. Below is an
example that show the problem.</font></span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US"><font color="#000000"><br>
Gruß Thomas Lußnig</font><br>
</span></b></p>
<p class="MsoNormal" style="text-autospace:none"><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> java.io.InputStream;</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><br>
<b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> java.io.OutputStream;</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><br>
<b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> java.net.InetSocketAddress;</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055" lang="EN-US"><br>
import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> java.net.ServerSocket;</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055" lang="EN-US"><br>
import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> java.net.Socket;</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055" lang="EN-US"><br>
import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> java.net.URI;</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055" lang="EN-US"><br>
import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> java.time.Duration;</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US">
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US"><br>
import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> javax.net.ServerSocketFactory;</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> jdk.incubator.http.HttpClient;</span><span
style="font-size:10.0pt;font-family:Consolas;color:#3F7F5F"
lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055" lang="EN-US"><br>
import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> jdk.incubator.http.HttpRequest;</span><span
style="font-size:10.0pt;font-family:Consolas;color:#3F7F5F"
lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055" lang="FR"><br>
import</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="FR"> jdk.incubator.http.HttpResponse;</span><span
style="font-size:10.0pt;font-family:Consolas" lang="FR"></span><span
style="font-size:10.0pt;font-family:Consolas" lang="FR"> <br>
</span></p>
<p class="MsoNormal" style="text-autospace:none"><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">public</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">class</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> Client1 {<br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">static</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">void</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> server(</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">final</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">boolean</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">withContentLength</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">) {</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">try</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">(ServerSocket </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">ss</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> = ServerSocketFactory.<i>getDefault</i>().createServerSocket())
{</span><span style="font-size:10.0pt;font-family:Consolas"
lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">ss</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.setReuseAddress(</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">true</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">);</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">ss</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.bind(</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">new</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> InetSocketAddress(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US">"127.0.0.1"</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">,80));</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">final</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">byte</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">[] </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">buf</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> = </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">new</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">byte</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">[120400];</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">try</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">(Socket </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">s</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> = </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">ss</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.accept()) {</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
System.</span><b><i><span
style="font-size:10.0pt;font-family:Consolas;color:#0000C0"
lang="EN-US">out</span></i></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.println(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US">"Accepted: "</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">+</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">s</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.getRemoteSocketAddress());</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">try</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">( OutputStream </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">os</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> = </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">s</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.getOutputStream();</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> InputStream </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">is</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> = </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">s</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.getInputStream()) {</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">is</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.read(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">buf</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">);</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">is</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.read(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">buf</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">);</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">os</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.write(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US">"HTTP/1.0 200 OK\r\nConnection:
close\r\nContent-Type: text/xml; charset=UTF-8\r\n"</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.getBytes());</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">if</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">withContentLength</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">) </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">os</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.write(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US">"Content-Length: 4\r\n"</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.getBytes());</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">os</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.write(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US">"\r\n"</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.getBytes());</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">os</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.write(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US">"<x/>"</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.getBytes());</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">os</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.flush();</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
}</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
}</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
} </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">catch</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">(</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">final</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> Throwable </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">t</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">) { </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">t</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.printStackTrace(); }</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
}</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">static</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">void</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> client() {</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">try</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> {</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">final</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> HttpClient </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">client</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> = HttpClient.<i>newBuilder</i>().version(HttpClient.Version.</span><b><i><span
style="font-size:10.0pt;font-family:Consolas;color:#0000C0" lang="EN-US">HTTP_2</span></i></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">).build();</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">final</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> HttpResponse<String> </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">response</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> = </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">client</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
.send(HttpRequest.<i>newBuilder</i>(</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055" lang="EN-US">new</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> URI(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US"><a class="moz-txt-link-rfc2396E" href="http://127.0.0.1/test">"http://127.0.0.1/test"</a></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">)).timeout(Duration.<i>ofMillis</i>(120_000))</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">
.POST(HttpRequest.BodyPublisher.<i>fromString</i>(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US">"body"</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">)).build(), HttpResponse.BodyHandler.<i>asString</i>());</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> System.</span><b><i><span
style="font-size:10.0pt;font-family:Consolas;color:#0000C0"
lang="EN-US">out</span></i></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.println(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US">"Received reply: "</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> + </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">response</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.statusCode());</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
System.</span><b><i><span
style="font-size:10.0pt;font-family:Consolas;color:#0000C0"
lang="EN-US">out</span></i></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.println(</span><span
style="font-size:10.0pt;font-family:Consolas;color:#2A00FF"
lang="EN-US">"Received body: "</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> + </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">response</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.body());</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
} </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">catch</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">(</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">final</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> Throwable </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">t</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">) { </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">t</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">.printStackTrace(); }</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
}</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span></p>
<p class="MsoNormal" style="text-autospace:none"><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"> </span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">public</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">static</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">void</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> main(</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">final</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> String[] </span><span
style="font-size:10.0pt;font-family:Consolas;color:#6A3E3E"
lang="EN-US">args</span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">) </span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">throws</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> Exception {</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">new</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> Thread(()-><i>server</i>(</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">true</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">)).start();</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
<i>client</i>();</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">new</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"> Thread(()-><i>server</i>(</span><b><span
style="font-size:10.0pt;font-family:Consolas;color:#7F0055"
lang="EN-US">false</span></b><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US">)).start();</span><span
style="font-size:10.0pt;font-family:Consolas" lang="EN-US"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"
lang="EN-US"><br>
</span><i><span
style="font-size:10.0pt;font-family:Consolas;color:black">client</span></i><span
style="font-size:10.0pt;font-family:Consolas;color:black">();</span><span
style="font-size:10.0pt;font-family:Consolas"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"><br>
}</span><span
style="font-size:10.0pt;font-family:Consolas"></span><span
style="font-size:10.0pt;font-family:Consolas;color:black"><br>
}</span><span style="font-size:10.0pt;font-family:Consolas"></span></p>
</div>
</div>
</body>
</html>