In Tomcat 8, WebappClassLoader disallows overrides of org.apache.tomcat.* classes which includes org.apache.tomcat.jdbc.*. As a result, it is impossible to use the Tomcat JDBC pool with a JDBC driver in WEB-INF/lib. On Tomcat 7 this is possible by packaging both tomcat-jdbc.jar and the driver in WEB-INF/lib.
Would it be possible to add an exception for “org.apache.tomcat.jdbc” to the regex below to restore this capability? protected final Matcher packageTriggersPermit = Pattern.compile("^javax\\.servlet\\.jsp\\.jstl\\.").matcher("”); I know the intent of the org.apache.x patterns in the corresponding packageTriggersDeny regex is to disallow overriding of container implementation classes. But really, the Tomcat JDBC Connection Pool is a reusable library that happens to share a package namespace with container classes. It is, after all, offered as a standalone module. It is fair to debate whether it is a good idea to place JDBC drivers in WEB-INF/lib in the first place, but it's often quite convenient. Further, with the current behavior, applications using the Tomcat JDBC pool behave differently based on whether the container they are deployed on provides these non-servlet-spec classes, which seems a bit ugly, given that the module is intended for reuse. John --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org