https://bz.apache.org/bugzilla/show_bug.cgi?id=69447
Bug ID: 69447 Summary: Tomcat 9.0.97 fails to load classes due to the newly added ConcurrentLruCache Product: Tomcat 9 Version: 9.0.97 Hardware: PC Status: NEW Severity: normal Priority: P2 Component: Catalina Assignee: dev@tomcat.apache.org Reporter: so...@his.de Target Milestone: ----- # Reproduction # 1. Tomcat 9.0.97 with enabled notFoundClassResourceCache 2. The webapp adds classes/jars (an externalRepostitory) by calling WebappClassLoaderBase.addURL() that are outside of the WEB-INF/classes-folder 3. The webapp tries (and fails) to load a class from an externalRepostitory when using WebappClassLoaderBase.getResourceAsStream() ## Expected behavior ## WebappClassLoaderBase checks externalRepostitories before marking the class as "cannot be found" ## Actual behavior ## WebappClassLoaderBase marks a class as "cannot be found" after only looking in the WEB-INF/classes folder # Analysis # When WebappClassLoaderBase.findClass() is called, it tries to load the class by calling WebappClassLoaderBase.findClassInternal(). WebappClassLoaderBase.findClassInternal() only looks for classes in /WEB-INF/classes. When the requested class is not found by findClassInternal(), the class is erroneously added to notFoundClassResources before checking externalRepostitories. The bug was introduced in this commit: https://github.com/apache/tomcat/commit/3dbe41a -- 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