百度广告
下午,QA报告了一个问题,在AIX上配置Tomcat的https出现问题,具体异常
Catalina.start: LifecycleException: null.open: java.security.NoSuchAlgorithmException: Class com.ibm.jsse.bq configured for SSLContext not a SSLContext
LifecycleException:
null.open: java.security.NoSuchAlgorithmException: Class com.ibm.jsse.bq configured for SSLContext not a SSLContext
at org.apache.catalina.connector.http.HttpConnector.initialize(HttpConnector.java:1209)
于是,查了tomcat中的server.xml的Connector配置, 查看了AIX上java的信息版本,
java version "1.4.2" Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2) Classic VM (build 1.4.2, J2RE 1.4.2 IBM AIX build ca1420-20040626 (JIT enabled: jitc)) 这个问题一般是与java.security有关,于是查看了jre/1.4.2/lib/security下的java.security文件配置,主要是securty.provider的配置信息,
security.provider.1=com.ibm.jsse.IBMJSSEProvider security.provider.2=com.ibm.crypto.provider.IBMJCE security.provider.3=com.ibm.security.jgss.IBMJGSSProvider security.provider.4=com.ibm.security.cert.IBMCertPath 查了com.ibm.jsse.bq这个class,竟然在IBMJSSE和IBMJCE这两个provider中都存在,但是classload应该是首先加载IBMJCE的,这应该就是问题所在。
于是将securty.provider的配置信息更改为: security.provider.1=com.ibm.crypto.provider.IBMJCE security.provider.2=com.ibm.jsse.IBMJSSEProvider 并且重新生成keystore文件,就可以了。
点击加载更多评论>>