展开到OracleConnection [英] Unwrap to OracleConnection

查看:134
本文介绍了展开到OracleConnection的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有这段代码,该代码曾经使用JBoss 5.1,Oracle 11,ojdbc6.jar正常运行.我正在根据需要获取OracleConnection.

I have this piece of code that used to run properly using JBoss 5.1, Oracle 11, ojdbc6.jar. I was getting the OracleConnection as needed.

InitialContext ic = new InitialContext();
DataSource  ds = ( DataSource ) ic.lookup( "java:/" + dataSource );
Connection con = ds.getConnection();       
OracleConnection conn = con.unwrap( OracleConnection.class );

不再使用JBoss 7,Oracle 11,ojdbc6.jar. 它说像这样:

Not anymore using JBoss 7, Oracle 11, ojdbc6.jar. It says like this:

连接 不是Oracle Connection的包装器类

Connection Not a wrapper class for Oracle Connection

如果您有任何想法,请帮助.

If you have any idea, please help.

推荐答案

我在Glassfish中使用"oracle.jdbc.pool.OracleConnectionPoolDataSource"作为数据源类.

I use "oracle.jdbc.pool.OracleConnectionPoolDataSource" as datasouce class in glassfish.

使用该类或查找jboss类.

Use the class or find jboss class.

编辑并尝试:

public OracleConnection getOracleConnection(Connection connection) throws SQLException {
    OracleConnection oconn = null;
    try {
        if (connection.isWrapperFor(oracle.jdbc.OracleConnection.class)) {
            oconn = (OracleConnection) connection.unwrap(oracle.jdbc.OracleConnection.class)._getPC();
        }
    } catch (SQLException e) {
        throw e;
    }
    return oconn;
}

这篇关于展开到OracleConnection的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆