客户端:11.1.0
服务端:12.1.0
Java 程序启动时报错:
org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (ORA-28040: No matching authentication protocol) at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225) at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880) at com.defonds.als.dao.ALSDAOBase.initConnection(ALSDAOBase.java:141) at com.defonds.als.dao.DBQuery.initQuery(DBQuery.java:599) at com.defonds.als.dao.DBQuery.initQuery(DBQuery.java:537) at com.defonds.als.dao.DBQuery.executeQueryWithModelData(DBQuery.java:342) at com.defonds.als.dao.DBQuery.executeQueryWithModelData(DBQuery.java:316) at com.defonds.framework.controller.ejb.util.EventMappingLoader.loadEventMappings(EventMappingLoader.java:76) at com.defonds.framework.controller.ejb.util.EventMappingLoader.getEventMapping(EventMappingLoader.java:102) at com.defonds.framework.controller.SameJVMController.execute(SameJVMController.java:85) at com.defonds.als.gui.model.SameJVMModelLoader.doBusinessEvent(SameJVMModelLoader.java:33) at com.defonds.als.gui.model.ModelLoader.doBusiness(ModelLoader.java:193) at com.defonds.als.gui.model.ModelLoader.doBusiness(ModelLoader.java:96) at com.defonds.als.Startup.initCustomerInfor(Startup.java:223) at com.defonds.als.Startup.(Startup.java:101) at com.defonds.als.Startup.main(Startup.java:284)orange |
解决办法: 1、D:\app\admin\product\11.1.0\client_1\network\admin\sqlnet.ora 添加以下行:
SQLNET.ALLOWED_LOGON_VERSION=8 |
2、将编译依赖的 ojdbc 版本由 ojdbc14 改为 ojdbc7。
两者缺一不可。