0

我正在尝试创建一个从 glassfish 到 Oracle 的连接池。当我使用命令行时,在创建过程中似乎一切正常,但应用程序因以下异常而崩溃:

Caused by: java.sql.SQLException: Protocol violation at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:450) at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186) at oracle.jdbc.driver.T4C7Ocommoncall.doOROLLBACK(T4C7Ocommoncall.java:68) at oracle.jdbc.driver.T4CConnection.doRollback(T4CConnection.java:642) at oracle.jdbc.driver.PhysicalConnection.rollback(PhysicalConnection.java:3716) at com.sun.gjc.spi.base.ConnectionHolder.rollback(ConnectionHolder.java:630) at org.hibernate.transaction.JDBCTransaction.rollbackAndResetAutoCommit(JDBCTransaction.java:217) at org.hibernate.transaction.JDBCTransaction.rollback(JDBCTransaction.java:196)

编辑:当应用程序尝试使用 JPA 进行回滚时,会引发此异常。结束编辑

这是我用来创建 CP 的命令:
asadmin> create-jdbc-connection-pool --restype javax.sql.DataSource --datasourceclassname oracle.jdbc.pool.OracleDataSource --property "user=myUser:password=myPw:url=jdbc\\:oracle\\:thin\\:@dbHostName\\:1521\\:mySID" My_CP

我还尝试从管理员 gui 创建 CP(这将更加用户友好),但即使我在 /opt/glassfish3_old/glassfish/domains/domain1/lib 中复制了 ojdbc6.jar,当我必须选择驱动程序时classname 对应的选择列表为空!

编辑:我正在使用:Java 版本“1.7.0_06”Java(TM) SE 运行时环境(构建 1.7.0_06-b24)Java HotSpot(TM) 服务器 VM(构建 23.2-b09,混合模式)

和 glassfish 3.1.2.2 oracle 版本(但对于 3.1.2 开源版本,它的行为相同)
结束编辑

可能我在某个地方犯了一个愚蠢的错误。

任何人都可以有一个建议吗?

4

1 回答 1

0

代替:

url=jdbc\\:oracle\\:thin\\:@dbHostName\\:1521\\:mySID

尝试以下模式?

jdbc:oracle:thin:@dbHostName:1521:mySID
于 2012-08-27T13:52:43.047 回答