Hi, We recently upgraded to Tomcat 8. As per the Migration Guide: https://tomcat.apache.org/migration-8.html#Database_Connection_Pooling and DBCP documentation https://tomcat.apache.org/tomcat-8.0-doc/jndi-datasource-examples-howto.html#Database_Connection_Pool_(DBCP_2)_Configurations, we switched to using the new param values like: maxTotal and maxWaitMillis.
Then, we switched to using the Tomcat DBCP by adding factory="org.apache.tomcat.jdbc.pool.DataSourceFactory". Tomcat did not seem to have a problem with using Tomcat DBCP with the updated param names. Then, I modified a test we were running to also use a Spring initialized, Tomcat DBCP DataSource: <bean id="dataSource" class="org.apache.tomcat.jdbc.pool.DataSource" destroy-method="close"> Now, our test is complaining with: "Bean property 'maxWaitMillis' is not writable or has an invalid setter method." because we were using the new style param name: <property name="maxWaitMillis" value="5000"/> So now I'm confused. 1. Does Tomcat DBCP (in Tomcat 8) indeed use different params than the new DBCP2 that ships with Tomcat 8? 2. Why did Tomcat not complain when I was using maxWaitMillis with the updated factory="org.apache.tomcat.jdbc.pool.DataSourceFactory" but does complain when I try to instantiate that pool implementation's DataSource directly? 3. Is there some other way that I should be instantiating the Tomcat DBCP DataSource in my test that would be more appropriate? I searched the archives and couldn't find mention of this. Thanks! -- Bradley Wagner VP Engineering, Hannon Hill www.hannonhill.com | Twitter <https://twitter.com/hannon_hill> | Github <http://github.com/hannonhill>