Chinaunix首页 | 论坛 | 博客
  • 博客访问: 155754
  • 博文数量: 39
  • 博客积分: 2031
  • 博客等级: 大尉
  • 技术积分: 375
  • 用 户 组: 普通用户
  • 注册时间: 2008-11-24 14:31
文章分类

全部博文(39)

文章存档

2012年(1)

2011年(1)

2009年(6)

2008年(31)

我的朋友

分类:

2008-11-24 20:00:10

下午,QA报告了一个问题,在AIX上配置Tomcat的https出治侍猓?咛逡斐H缦拢?lt;/SPAN>
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配置,如下:
<Connector className="org.apache.catalina.connector.http.HttpConnector" port="8544" minProcessors="5" maxProcessors="75" enableLookups="true" acceptCount="10" debug="0" scheme="https" secure="true" allowChunking="false">
    
<Factory className="org.apache.catalina.net.SSLServerSocketFactory" clientAuth="false" protocol="TLS" keystoreFile="/tibco/tra2/tibco/administrator/domain/aix_Test_GG/SSL/keystore" keystorePass="123456"/>
Connector>
 
查看了AIX上java的信息版本,如下:
java version "1.4.2"
(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文件,就可以了。
阅读(1353) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~