Per Servlet 3.1, section 8.3: "Previously, a web container had to scan TLD resources for any listener declarations. With Servlet 3.0 and later versions, this responsibility may be delegated to the JSP container."
This has been fixed in trunk and will be included in 8.0.x http://svn.apache.org/r1512826 http://svn.apache.org/r1513028 TLD scanning has been consolidated into a ServletContainerInitializer provided by Jasper that uses the ServletContext to dynamically register listeners. As a result, the application and its JARs are scanned once rather than twice (by Catalina's TldConfig and Jasper's TldLocationsCache).