If the Resource in the server.xml is defined with initSQL="" the method DataSource#getConnection() throws a NullPointerException. I would suggest to change this behaviour that the part in the org.apache.tomcat.jdbc.pool.DataSourceFactory class gets changed from >>> value = properties.getProperty(PROP_INITSQL); if (value != null ) { poolProperties.setInitSQL(value); } <<< to value = properties.getProperty(PROP_INITSQL); if (value != null && ! "".equals(value)) { poolProperties.setInitSQL(value); } java.lang.NullPointerException at org.apache.tomcat.jdbc.pool.ConnectionPool.setupConnection(ConnectionPool.java:276) at org.apache.tomcat.jdbc.pool.ConnectionPool.getConnection(ConnectionPool.java:180) at org.apache.tomcat.jdbc.pool.DataSourceProxy.getConnection(DataSourceProxy.java:124)
Fixed in r1616592