Incorrect handling of HTTP/1.1 "Expect: 100-continue" in HttpURLConnection

Piotr Bzdyl piotr at bzdyl.net
Tue May 7 07:22:02 PDT 2013


Thank you very much for clarification!

Best regards,
Piotr


On Tue, May 7, 2013 at 4:05 PM, Chris Hegarty <chris.hegarty at oracle.com>wrote:

> On 05/07/2013 02:59 PM, Piotr Bzdyl wrote:
>
>> Chris,
>>
>> When I used the URL provided by you I have indeed access to my bug
>> report. It seems the notification email I got with confirmation of my
>> report submission provides the misleading URL. Is it possible to fix it
>> in the notification template?
>>
>
> You are right the URL provided to you is pretty much useless, at this
> point. Not that is matters much, but there are separate JIRA projects for
> bugs moving from web screening to the "real" bug incidents. If it is any
> consolation, your issue has made it all the way ;-)
>
>
>
>> When I debug the code (using the test case I attached to the bug
>> report), it doesn't go into the
>>
>>          if (streaming() && strOutputStream == null) {
>>              writeRequests();      // <<<< Here
>>          }
>>
>> but goes directly to expect100Continue() in:
>>          if (expectContinue) {
>>              expect100Continue();
>>          }
>>
>
> Ah ha. that is the bug. We should always writeRequests ( write headers )
> when expectContinue is set. I'll update the bug with this clear comment,
> and then propose a patch for JDK8.
>
> -Chris.
>
>
>>
>>
>> On Tue, May 7, 2013 at 3:52 PM, Chris Hegarty <chris.hegarty at oracle.com
>> <mailto:chris.hegarty at oracle.**com <chris.hegarty at oracle.com>>> wrote:
>>
>>     Hi Piotr,
>>
>>     Your bug is accessible at
>>     http://bugs.sun.com/view_bug._**_do?bug_id=8012625<http://bugs.sun.com/view_bug.__do?bug_id=8012625>
>>
>>     <http://bugs.sun.com/view_bug.**do?bug_id=8012625<http://bugs.sun.com/view_bug.do?bug_id=8012625>
>> >
>>
>>      From my reading of the code the headers should be sent before
>>     waiting for the reply to continue.
>>
>>      From sun/net/www/prtotocol/http/__**HttpURLConnection:
>>
>>
>>          getOutputStream() {
>>              ....
>>              if (!checkReuseConnection())
>>                  connect();
>>
>>              boolean expectContinue = false;
>>              String expects = requests.findValue("Expect");
>>              if ("100-Continue".__**equalsIgnoreCase(expects)) {
>>
>>                  http.setIgnoreContinue(false);
>>                  expectContinue = true;
>>              }
>>
>>              if (streaming() && strOutputStream == null) {
>>                  writeRequests();      // <<<< Here
>>              }
>>
>>              if (expectContinue) {
>>                  expect100Continue();
>>              }
>>              ....
>>
>>          }
>>
>>     Are you seeing something different?
>>
>>     -Chris.
>>
>>
>>
>>     On 05/07/2013 02:25 PM, Piotr Bzdyl wrote:
>>
>>         Hello,
>>
>>         This is my first post to this mailing list so I would like to
>>         say "Hi".
>>
>>         The reason I subscribed and I am writing is that I believe I
>>         have found
>>         a bug in sun.*.HttpURLConnection class (in particular how it
>> handles
>>         Expect: 100-continue header). I have already submitted a bug at
>>         bugs.sun.com <http://bugs.sun.com> <http://bugs.sun.com> but
>>
>>         after almost 3 weeks I still
>>
>>         cannot access the bug and check its status
>>         (http://bugs.sun.com/__**bugdatabase/view_bug.do?bug___**
>> id=9001773<http://bugs.sun.com/__bugdatabase/view_bug.do?bug___id=9001773>
>>         <http://bugs.sun.com/**bugdatabase/view_bug.do?bug_**id=9001773<http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=9001773>
>> >).
>>
>>
>>         I would like to ask if bugs.sun.com <http://bugs.sun.com>
>>         <http://bugs.sun.com> is alive or if
>>
>>         it is possible to report the bug in the OpenJDK project or is
>>         there any
>>         other alternative procedure for submitting bug reports.
>>
>>         Best regards,
>>         Piotr Bzdyl
>>
>>
>>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.openjdk.java.net/pipermail/net-dev/attachments/20130507/00749b1e/attachment.html 


More information about the net-dev mailing list