https://bz.apache.org/bugzilla/show_bug.cgi?id=66338
Bug ID: 66338
Summary: ErrorReportValve.report no longer called for all
errors
Product: Tomcat 9
Version: 9.0.67
Hardware: All
OS: All
Status: NEW
Severity: minor
Priority: P2
Component: Catalina
Assignee: [email protected]
Reporter: [email protected]
Target Milestone: -----
Up to and including tomcat 9.0.65, the report method of ErrorReportValve was
invoked for all requests, and subclasses could then decide on the exact
conditions when to report an error. The logic at the start of the report method
of ErrorReportValve and JsonErrorReportValve was identical, so it was
refactored into the invoke method of ErrorReportValve in 9.0.67.
However, this changes the behavior of all custom subclasses of ErrorReportValve
- their report method now only gets called if the response is explitcitly
marked as error. The report method no longer gets called for responses with
status code >= 400, but without a Throwable. There is no way to customize this
behavior without copy-pasting the whole invoke method.
It would be nice if the deduplicated code was not directly a part of the invoke
method, but in a separate protected method that could be overridden by
subclasses.
--
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]