[#8143] java.lang.NoSuchMethodException when calling setBinaryDouble on org.jboss.jca.adapters.jdbc.WrappedStatement

This commit is contained in:
lukaseder 2018-12-27 16:12:56 +01:00
parent ebe400075f
commit d556bf8036

View File

@ -318,7 +318,7 @@ class DefaultExecuteContext implements ExecuteContext {
* <ul>
* <li><code>org.springframework.jdbc.datasource.ConnectionProxy</code></li>
* <li><code>org.apache.commons.dbcp.DelegatingConnection</code></li>
* <li><code>org.jboss.jca.adapters.jdbc.jdk8.WrappedConnectionJDK8</code></li>
* <li><code>org.jboss.jca.adapters.jdbc.WrappedConnection</code></li>
* <li>...</li>
* </ul>
* <p>
@ -380,7 +380,7 @@ class DefaultExecuteContext implements ExecuteContext {
}
catch (ReflectException ignore) {}
// [#7641] Unwrap nested org.jboss.jca.adapters.jdbc.jdk8.WrappedConnectionJDK8
// [#7641] Unwrap nested org.jboss.jca.adapters.jdbc.WrappedConnection
try {
Connection r = Reflect.on(result).call("getUnderlyingConnection").get();
if (result != r && r != null) {
@ -450,6 +450,16 @@ class DefaultExecuteContext implements ExecuteContext {
}
catch (ReflectException ignore) {}
// [#7641] Unwrap nested org.jboss.jca.adapters.jdbc.WrappedStatement
try {
PreparedStatement r = Reflect.on(result).call("getUnderlyingStatement").get();
if (result != r && r != null) {
result = r;
continue unwrappingLoop;
}
}
catch (ReflectException ignore) {}
// No unwrapping method was found.
break;
}