We recently ran into an issue where the requestDestroyed() method of listeners were not being called when exceptions were propagated out of our application.
Looking into the code, it seems related to this[1]. Is this the expected behavior for listeners and we can’t rely on the requestDestroyed() method always being called for a request? One option we have considered is migrating to exclusively using filters and handling the exceptional use case explicitly there. Is there a recommended approach for this use case? -Simon [1] http://grepcode.com/file/repo1.maven.org/maven2/org.apache.tomcat.embed/tomcat-embed-core/7.0.59/org/apache/catalina/core/ApplicationDispatcher.java#486