在工作中,我正在尝试使Tomcat 8.5.34应用程序使用Oracle Wallet通过TCPS连接到Oracle DB 12.2.0.1。
我遵循了许多不同的指导,并进行了以下操作:
在catalina lib /文件夹中添加了oraclepki.jar,ojdbc8.jar,osdt_core.jar和osdt_core.jar。
修改了java.security提供程序,使其在列出的提供程序底部包括oracle.security.pki.OraclePKIProvider。
我将JNDI连接器配置为通过别名连接到数据库。
在Tomcat的setenvs.sh中,添加了以下内容:
-Doracle.net.tns_admin=< wallet files location with tnsora>
-Doracle.net.wallet_location="(SOURCE=(METHOD=FILE) (METHOD_DATA = (DIRECTORY=< wallet files location with tnsora>)))"
然而,日志说:
Caused by: oracle.net.ns.NetException: Unable to initialize the key store.
at oracle.net.nt.CustomSSLSocketFactory.getKeyManagerArray(CustomSSLSocketFactory.java:642)
at oracle.net.nt.CustomSSLSocketFactory.getSSLSocketEngine(CustomSSLSocketFactory.java:547)