【问题描述】
业务使用Oracle数据库,在PAS 6.5中配置了jndi数据源。运行时,业务代码中获取数据源连接进行类型转换报错:ERROR app.db.table.Oracle: 创建clob字段失败:com.primeton.appserver.gjc.spi.jdbc40.ConnectionWrapper40 cannot be cast to org.apache.commons.dbcp.PoolableConnection
【解决方案】
不能直接进行类型强转,可以参考如下方式进行unwarp方式将连接类型改为OracleConnection:
if (connection.isWrapperFor(OracleConnection.class)){
// 增加此代码,将Connection转换为OracleConnection
OracleConnection oracleConnection= connection.unwrap(OracleConnection.class);
}else{
// 非Oracle类型连接
}
【原文链接】
http://doc.primeton.com/pages/viewpage.action?pageId=61902387
Oracle数据库连接转换错误及解决方案
在使用Oracle数据库的PAS6.5环境中,配置jndi数据源时遇到类型转换错误。错误信息显示无法将ConnectionWrapper40转换为OracleConnection。解决方法是通过isWrapperFor和unwrap方法将连接转换为OracleConnection,避免直接强转,确保兼容性。
2475

被折叠的 条评论
为什么被折叠?



