ORA-28040:与oracle12c一起使用groovy.sql包时,没有匹配的身份验证协议异常

时间:2014-08-05 16:00:42

标签: java sql jdbc groovy oracle12c

我正在尝试使用 groovy.sql.Sql连接 oracle12c 数据库

Sql sql = Sql.newInstance('jdbc:oracle:thin:@'+hostName:port/serviceName, dbUser, dbPassword, 'oracle.jdbc.driver.OracleDriver')

然后返回

java.sql.SQLException: ORA-28040: No matching authentication protocol

我想,这是因为方言不匹配。

它适用于 oracle11g ,但不适用于 12c 。如果 dialect 出现问题,我们如何在外部指定 dialect groovy.sql.Sql 。如果没有,可能是什么问题/解决方案?

我正在使用 ojdbc14 驱动程序。

2 个答案:

答案 0 :(得分:9)

ojdbc14是一个相对较老的驱动程序,这可能是问题所在。我建议您尝试ojdbc6并查看是否可以解决您的问题。

请注意,根据此SO问题ORA-28040: No matching authentication protocol exception中的评论中的信息,这似乎解决了类似的问题。

答案 1 :(得分:0)

您指的是DataSource.groovy中通常配置的方言吗?如果是这样,这在创建Sql实例时无关紧要,因为方言仅由Hibernate / GORM使用。