我在http://www.globalsign.com/support/install/install_tomcat.php上执行了以下步骤,使用中的以下条目server.xml:
server.xml
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" keystoreFile="D:\Tomcat\ukdp.keystore" keystorePass="123456" keyAlias="ukdp" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" />
但是在启动过程中会发生以下异常:
SEVERE: Error initializing endpoint java.io.IOException: Alias name ukdp does not identify a key entry at org.apache.tomcat.util.net.jsse.JSSESocketFactory.getKeyManagers(JSSESocketFactory.java:412) at org.apache.tomcat.util.net.jsse.JSSESocketFactory.init(JSSESocketFactory.java:378) at org.apache.tomcat.util.net.jsse.JSSESocketFactory.createSocket(JSSESocketFactory.java:125) at org.apache.tomcat.util.net.JIoEndpoint.init(JIoEndpoint.java:496) at org.apache.coyote.http11.Http11Protocol.init(Http11Protocol.java:177) at org.apache.catalina.connector.Connector.initialize(Connector.java:1059) at org.apache.catalina.core.StandardService.initialize(StandardService.java:677) at org.apache.catalina.core.StandardServer.initialize(StandardServer.java:792) at org.apache.catalina.startup.Catalina.load(Catalina.java:518) at org.apache.catalina.startup.Catalina.load(Catalina.java:538) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) at java.lang.reflect.Method.invoke(Unknown Source) at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:260) at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:412) Mar 14, 2011 4:14:56 PM org.apache.catalina.startup.Catalina load
当我keyAlias如下删除条目时:
keyAlias
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" keystoreFile="D:\Tomcat\ukdp.keystore" keystorePass="123456" maxThreads="150" scheme="https" secure="true" clientAuth="false" sslProtocol="TLS" />
启动期间发生以下异常:
SEVERE: Socket accept failed java.net.SocketException: SSL handshake errorjavax.net.ssl.SSLException: No available certificate or key corresponds to the SSL cipher suites which are enabled. at org.apache.tomcat.util.net.jsse.JSSESocketFactory.acceptSocket(JSSESocketFactory.java:150) at org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:310) at java.lang.Thread.run(Unknown Source) Mar 14, 2011 4:20:31 PM org.apache.tomcat.util.net.JIoEndpoint$Acceptor run SEVERE: Socket accept failed java.net.SocketException: SSL handshake errorjavax.net.ssl.SSLException: No available certificate or key corresponds to the SSL cipher suites which are enabled. at org.apache.tomcat.util.net.jsse.JSSESocketFactory.acceptSocket(JSSESocketFactory.java:150) at org.apache.tomcat.util.net.JIoEndpoint$Acceptor.run(JIoEndpoint.java:310) at java.lang.Thread.run(Unknown Source) Mar 14, 2011 4:20:31 PM org.apache.tomcat.util.net.JIoEndpoint$Acceptor run SEVERE: Socket accept failed
首先,您的密钥库中有什么。
keytool -list -keystore D:\Tomcat\ukdp.keystore -storepass 123456
如果确实没有“ udkp”键,这是您的问题。