Hello, I've seen this non compliancy. In TC 7.042 and 7.0.72. How, who can fix this ?
The case is related to web-fragment loading and SCI initialization. In Tomcat 7.0.42 and 7.0.72 at least, SCI (with @HandlesTypes annotation) are initialized web-fragments per web-fragments, with the classes previously discovered (in the WEB-INF/classes and previous processed jars). This means @HandlesTypes classes implementation located in web-fragments loaded after the one having the SCI are not provided to the SCI:onStartup method. The specification (8.2.4: onStartup method get's a Set of Classes) here is not clear, but we would expect having all classes, not only an "undefined" set of classes. A possible solution is a three steps initialization: - discover all SCI classes and their @HandlesTypes in all web-fragments - discover all @HandlesTypes implementation classes in all web-fragments - initialize SCI Thanks Stephane