I am trying to connect my grails project to Oracle databse(Oracle 12c) in windows(8) system. However, whenever i run my application i get following exception :
Caused by: org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (ORA-28040: No matching authentication protocol
)
Caused by: java.sql.SQLException: ORA-28040: No matching authentication protocol
According to internet suggestion i also tried editing my *.ora file but it is not working.
I added following snippet in sqlnet.ora file :
SQLNET.ALLOWED_LOGON_VERSION=10
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=10
SQLNET.ALLOWED_LOGON_VERSION_SERVER=10
Here i tried assigning (10,11,12) but neither of them is working.
Can anyone please help me with this ?
Solution #1
Client side fix - to upgrade client version
I deleted the ojdbc14.jar file and used ojdbc6.jar instead and it worked for me
Solution #2
DB server side fix - to allow lower client version.
$ORACLE_HOME/network/admin/sqlnet.ora文件,如果没有可以创建一个新的,加入下面的参数
SQLNET.ALLOWED_LOGON_VERSION=8
SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8