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=11572>.
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=11572

Bug with Http11Processor class 

           Summary: Bug with Http11Processor class
           Product: Tomcat 4
           Version: 4.0.4 Beta 2
          Platform: Other
        OS/Version: Other
            Status: NEW
          Severity: Normal
          Priority: Other
         Component: Connector:Coyote HTTP/1.1
        AssignedTo: [EMAIL PROTECTED]
        ReportedBy: [EMAIL PROTECTED]


This is an inconsistent problem I've encountered.

When an invalid URL is sent to Tomcat, instead of a 404 page I get a blank page
and the following stack trace in the catalina.out log:
[WARN] Http11Processor - -Error decoding URI
[WARN] Http11Processor - -Error decoding URI
[WARN] Http11Processor - -Error decoding URI
[WARN] Http11Processor - -Error decoding URI
[WARN] Http11Processor - -Error decoding URI
java.lang.ArrayIndexOutOfBoundsException
        at org.apache.coyote.http11.InternalInputBuffer.parseRequestLine(InternalI
nputBuffer.java:431)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:3
10)
        at org.apache.coyote.tomcat4.CoyoteProcessor.process(CoyoteProcessor.java:
791)
        at org.apache.coyote.tomcat4.CoyoteProcessor.run(CoyoteProcessor.java:870)
        at java.lang.Thread.run(Thread.java:484)
[WARN] Http11Processor - -Error parsing HTTP request <java.lang.ArrayIndexOutOfBou
ndsException>
java.lang.ArrayIndexOutOfBoundsException
        at org.apache.coyote.http11.filters.ChunkedInputFilter.parseChunkHeader(Ch
unkedInputFilter.java:290)
        at org.apache.coyote.http11.filters.ChunkedInputFilter.doRead(ChunkedInput
Filter.java:162)
        at org.apache.coyote.http11.filters.ChunkedInputFilter.end(ChunkedInputFil
ter.java:211)
        at org.apache.coyote.http11.InternalInputBuffer.endRequest(InternalInputBu
ffer.java:397)
        at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:3
44)
        at org.apache.coyote.tomcat4.CoyoteProcessor.process(CoyoteProcessor.java:
791)
        at org.apache.coyote.tomcat4.CoyoteProcessor.run(CoyoteProcessor.java:870)
        at java.lang.Thread.run(Thread.java:484)
[ERROR] Http11Processor - -Error finishing request <java.lang.ArrayIndexOutOfBound
sException>

Upon inspection of the org.apache.coyote.http11.Http11Processor class and 
org.apache.coyote.http11.InternalInputBuffer class, it seems like the
InternalInputBuffer class did not catch ArrayIndexOutOfBoundException in line
431.  Thus, propagating the error back to the Http11Processor class line310. 
Also, line318 of Http11Processor class contradicts the comment right above it
(one said 500, the other set status to 400).

I was using the coyote connector in the server.xml of Tomcat.  A URL that has
caused this problem is something that contains a period('.').  

Now my question is whether this behaviour is only found in the coyote conector.
 Or does the http connector share this code?  Our application has to be shipped
with the Tomcat4.0.4 release and later patches won't help. (I'd just like to
know, not asking for a fix in 4.0.4)

Thanks.

--
To unsubscribe, e-mail:   <mailto:[EMAIL PROTECTED]>
For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>

Reply via email to