You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by bu...@apache.org on 2003/10/15 10:40:33 UTC

DO NOT REPLY [Bug 23830] New: - Miss Handling on the Chunked Transfer Coding

DO NOT REPLY TO THIS EMAIL, BUT PLEASE POST YOUR BUG 
RELATED COMMENTS THROUGH THE WEB INTERFACE AVAILABLE AT
<http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23830>.
ANY REPLY MADE TO THIS MESSAGE WILL NOT BE COLLECTED AND 
INSERTED IN THE BUG DATABASE.

http://nagoya.apache.org/bugzilla/show_bug.cgi?id=23830

Miss Handling on the Chunked Transfer Coding

           Summary: Miss Handling on the Chunked Transfer Coding
           Product: Axis
           Version: current (nightly)
          Platform: All
        OS/Version: All
            Status: NEW
          Severity: Major
          Priority: Other
         Component: Basic Architecture
        AssignedTo: axis-dev@ws.apache.org
        ReportedBy: kimuratsy@nttdata.co.jp


The chunked transfer coding is specified in the HTTP 1.1
spec (RFC 2616) - you can see "3.6.1 Chunked Transfer Coding".
And, one of important description of "3.6 Transfer Codings" is
"All transfer-coding values are case-insensitive."
<http://www.w3.org/Protocols/rfc2616/rfc2616.html>

  In Axis, a field 'HEADER_TRANSFER_ENCODING_CHUNKED' is defined
in org.apache.axis.transport.http.HTTPConstants as follows;

    public static final String
          HEADER_TRANSFER_ENCODING_CHUNKED = "chunked".intern();

  This field is used by HTTPSender to check whether the message
has a chunked coding or not.

    String transferEncoding = (String) headers
     .get(HTTPConstants.HEADER_TRANSFER_ENCODING.toLowerCase());
    if (null != transferEncoding
        && transferEncoding.trim()
       .equals(HTTPConstants.HEADER_TRANSFER_ENCODING_CHUNKED)) {
         inp = new ChunkedInputStream(inp);
    }

  But, it seems that the toLowerCase() doesn't work correctly
in the above code.

  In facts, Axis 1.1 client meets a trouble with WebLogic server,
because it returns "Chunked" as the transfer-coding string.
That is, Axis accepts only "chunked" as case-sensitive.

--
Toshi <to...@apache.org>