お断り書き
ググっても英語しかヒットしなかったのでメモ書きレベルの記録です。
前提
- データベースはOracle
- 今使っているサーバーはTomcat7以下
- 今使っているJDBCドライバはojdbc6.jar
やりたいこと
Tomcatを7から8.5、または9.0にバージョンアップしたい
出るエラーメッセージ
java.lang.AbstractMethodError: oracle.jdbc.driver.T4CConnection.getSchema()Ljava/lang/String;
原因
- Tomcat 8からJava 7以上が必須になっている。
- Java 7でConnectionクラスにgetSchema()メソッドが増えてて、そちらをTomcatのコネクションプール(dbcp2)が使用している
- Java 7に対応したjdbcドライバはojdbc7.jar
対応
tomcatのlibフォルダにojdbc7.jar(あるいはより最新のjdbcドライバ)を放り込みましょう