Permalink to this page: https://cwiki.apache.org/confluence/x/3CklBg
This page is to discuss database error and DBCP. Until more content can appear here, here are some links to the mail archives to perform some searches:
Other Links of interest:
- Is it safe to use JDBC-ODBC bridge in production environment?
- How to use Orache thin driver?
- How to use JDBC 3 driver with Tomcat 8?
No, do not use JDBC-ODBC bridge bundled with Sun's JDK with Tomcat. It was never meant for a production server environment. If you ask a question about it, everyone will tell you to not use it. If you do need to use ODBC, there are 3rd party drivers which do a pretty good job at being thread safe.
If you use the oracle Oracle thin driver, be sure to rename it to a jar file from a zip file. Tomcat only auto-magically loads files ending in .jar placed in a lib directory. It ignores all other file extensions.
One of the connection pool implementations in Tomcat 8 is DBCP 2, and DBCP 2 calls Connection.isValid(int) method when no validationQuery is specified. IsValid(int) method is introduced with JDBC 4. If you must use JDBC 3 driver with Tomcat 8 / DBCP 2, make sure that you specify
validationQuery attribute in pool configuration.