Uploaded image for project: 'JBoss Enterprise Application Platform'
  1. JBoss Enterprise Application Platform
  2. JBEAP-25164

Server responds with chunked transfer even if client starts communication with HTTP/1.0

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Major Major
    • 8.0.0.GA-CR2
    • 8.0.0.Beta-CR1
    • Undertow
    • None
    • False
    • None
    • False
    • Hide

      The steps are same as described in JBEAP-25163 except the last curl command:

      curl --http1.0 -H "Accept-Encoding: gzip" http://localhost:8080/simple-web/dummy-text.html --compressed
      
      Show
      The steps are same as described in JBEAP-25163 except the last curl command: curl --http1.0 -H "Accept-Encoding: gzip" http: //localhost:8080/simple-web/dummy-text.html --compressed

      This is an issue created based on this one JBEAP-25163.

      It looks that server responds with chunked transfer even in case the client use HTTP/1.0 in the request. Although, since chunked transfer was introduced in the HTTP/1.1, it's against the standard, see RFC2068#section-19.7.1:

      However, a persistent connection with an HTTP/1.0 client cannot make
      use of the chunked transfer-coding, and therefore MUST use a
      Content-Length for marking the ending boundary of each message.

      Changes in HTTP/1.1 vs HTTP/1.0 in RFC7230#appendix-A.1.3:

      A.1.3. Introduction of Transfer-Encoding

      HTTP/1.1 introduces the Transfer-Encoding header field
      (Section 3.3.1). Transfer codings need to be decoded prior to
      forwarding an HTTP message over a MIME-compliant protocol.

      Also discussed here.


      Truth is that not many applications use HTTP/1.0 now, so this issue isn't probably a big problem these days. Still it's a violation of the standard.

            thofman Tomas Hofman
            jstourac@redhat.com Jan Stourac
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              Resolved: