https://bz.apache.org/bugzilla/show_bug.cgi?id=58751
Mark Thomas <ma...@apache.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |INVALID --- Comment #2 from Mark Thomas <ma...@apache.org> --- The test case is invalid. Tomcat enforces the requirements set on page 2-18 of Servlet 3.1. To quote the relevant section: <quote> In the event that an asynchronous operation times out, the container must run through the following steps: - Invoke the AsyncListener.onTimeout method on all the AsyncListener instances registered with the ServletRequest on which the asynchronous operation was initiated. - If none of the listeners called AsyncContext.complete() or any of the AsyncContext.dispatch methods, perform an error dispatch with a status code equal to HttpServletResponse.SC_INTERNAL_SERVER_ERROR. - If no matching error page was found, or the error page did not call AsyncContext.complete() or any of the AsyncContext.dispatch methods, the container MUST call AsyncContext.complete(). </quote> The provided test case does not call AsyncContext.complete() during onTimeout() so Tomcat performs the error dispatch required above. If the expected call to AsyncContext.complete() is added to onTimeout(), the behaviour the test case expects is observed. Tomcat might be able to handle this better but given the number of errors that preceed this, (async timeout, failure to call complete()) I'm not sure it is worth putting much/any effort into investigating possible improvements. -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org