25
25
import java .sql .DatabaseMetaData ;
26
26
import java .sql .ResultSet ;
27
27
import java .sql .ResultSetMetaData ;
28
- import java .sql .SQLDataException ;
29
28
import java .sql .SQLException ;
30
29
import java .sql .SQLFeatureNotSupportedException ;
31
30
import java .sql .Statement ;
@@ -197,14 +196,14 @@ else if (Clob.class.equals(requiredType)) {
197
196
try {
198
197
return rs .getObject (index , requiredType );
199
198
}
200
- catch (SQLDataException ex ) {
201
- logger .debug ("JDBC driver has limited support for JDBC 4.1 'getObject(int, Class)' method" , ex );
199
+ catch (AbstractMethodError err ) {
200
+ logger .debug ("JDBC driver does not implement JDBC 4.1 'getObject(int, Class)' method" , err );
202
201
}
203
202
catch (SQLFeatureNotSupportedException ex ) {
204
203
logger .debug ("JDBC driver does not support JDBC 4.1 'getObject(int, Class)' method" , ex );
205
204
}
206
- catch (AbstractMethodError err ) {
207
- logger .debug ("JDBC driver does not implement JDBC 4.1 'getObject(int, Class)' method" , err );
205
+ catch (SQLException ex ) {
206
+ logger .debug ("JDBC driver has limited support for JDBC 4.1 'getObject(int, Class)' method" , ex );
208
207
}
209
208
}
210
209
// Fall back to getObject without type specification...
@@ -219,7 +218,7 @@ else if (Clob.class.equals(requiredType)) {
219
218
* Retrieve a JDBC column value from a ResultSet, using the most appropriate
220
219
* value type. The returned value should be a detached value object, not having
221
220
* any ties to the active ResultSet: in particular, it should not be a Blob or
222
- * Clob object but rather a byte array respectively String representation.
221
+ * Clob object but rather a byte array or String representation, respectively .
223
222
* <p>Uses the {@code getObject(index)} method, but includes additional "hacks"
224
223
* to get around Oracle 10g returning a non-standard object for its TIMESTAMP
225
224
* datatype and a {@code java.sql.Date} for DATE columns leaving out the
0 commit comments