public void checkConnection(String dsName, Connection conn) throws SQLException { System.out.println("Running JDBC 3.0 connection checks on " + dsName); System.out.println( " holdability " + (conn.getHoldability() == ResultSet.HOLD_CURSORS_OVER_COMMIT)); // check it's a 3.0 connection object try { conn.releaseSavepoint(conn.setSavepoint()); System.out.println("JDBC 3.0 savepoint OK"); } catch (SQLException sqle) { // we expect savepoints exceptions because either // it's a global transaction, or it's in auto commit mode. System.out.println("JDBC 3.0 savepoint " + sqle.toString()); } super.checkConnection(dsName, conn); }