0
WebアプリケーションでArrayDescriptor
を作成中にClassCastException
を取得しています。 jndiルックアップを使用してTomcat DBCP接続プールから接続を取得しています。 ojdbc.jar 14ドライバjar、Oracle 11gサーバー、Tomcat 7サーバー、およびJDK 8を使用しています。 oracle.jdbc.OracleConnectionオブジェクトがプールから返される接続から取得されません。以下はoracle.sql.ArrayDescriptor.createDescriptor内のClassCastException
エラースタックトレースです:
java.lang.ClassCastException: com.sun.proxy.$Proxy34 cannot be cast to oracle.jdbc.OracleConnection
at oracle.sql.ArrayDescriptor.createDescriptor(ArrayDescriptor.java:149)
at oracle.sql.ArrayDescriptor.createDescriptor(ArrayDescriptor.java:115)
接続SYSOUTがある:server.xmlの
ProxyConnection[PooledConnection[[email protected]]]
JNDIの設定Tomcatの中の下: -
にHibernateを使用してResource
name="jdbc/my_db"
auth="Container"``
type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
initialSize="5"
maxActive="5"
maxIdle="2"
minIdle="1"
maxTotal="10"
maxWaitMillis="10000"
timeBetweenEvictionRunsMillis="34000"
minEvictableIdleTimeMillis="55000"
validationQuery="SELECT 1 FROM DUAL"
validationInterval="34000"
testOnBorrow="true"
removeAbandoned="true"
removeAbandonedTimeout="55"
driverClassName="oracle.jdbc.OracleDriver"
url="jdbc:xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
username="aaaaaaa"
password="bbbbbbbbbb"
connectionProperties="SetBigStringTryClob=true"
accessToUnderlyingConnectionAllowed="true"/>
接続を取得する: -
getSession().doWork(new Work() {
@Override
public void execute(Connection connection) throws SQLException {
ArrayDescriptor descNum =
ArrayDescriptor.createDescriptor("ARRAY_NUMC", connection);
}
私はまた、接続解除方法を使用しましたが、動作しません。
「接続解除方法も使用しましたが、機能しません」どの結果とつながりが得られますか? – davidxxx
unwrap(OracleConnection.class)中にエラーが発生しました: - 原因:java.sql.SQLException:oracle.jdbc.driver.OracleConnectionのラッパーではありません at org.apache.tomcat.jdbc.pool.ProxyConnection.unwrap(ProxyConnection .java:87) at org.apache.tomcat.jdbc.pool.ProxyConnection.invoke(ProxyConnection.java:119) at org.apache.tomcat.jdbc.pool.JdbcInterceptor.invoke(JdbcInterceptor.java:108) org.apache.tomcat.jdbc.pool.DisposableConnectionFacade.invoke(DisposableConnectionFacade.java:81) (com.sun.proxy)$ Proxy34.unwrap(不明なソース) –