启动Tomcat未能初始化与ProtocolHandler关联的终点 [英] Starting Tomcat Failed to initialize end point associated with ProtocolHandler
问题描述
我正在尝试启动一个tomcat实例(我拥有的唯一一个tomcat),并且遇到了一些奇怪的问题,我知道此错误:
I'm trying to start a tomcat instance(the only tomcat I have), and I'm getting some weird problems, I know that this error:
无法初始化与ProtocolHandler关联的终点
Failed to initialize end point associated with ProtocolHandler
是因为其他一些应用程序正在使用相同的端口,但是如果我更改 server.xml 中的端口并再次运行 startup.bat ,我会得到相同的结果错误,但现在指向新端口,每次更改它都会得到相同的错误,同时我还会使用命令 netstat -ano |检查其他正在侦听同一端口的应用程序.找到"9080" ,我在3台不同的机器(2台win7、1台win server 2008)上尝试了此操作,有人遇到过此问题吗?
is because some other application is using the same port, but if I change the port in the server.xml and run the startup.bat again I get the same error but now pointing to the new port, every time y change it I get the same error, also I check for other apps listening the same port using the command netstat -ano | find "9080", I tried this on 3 different machines (2 win7, 1 win server 2008), has anyone faced this problem before?
2014年2月13日下午1:25:22 org.apache.coyote.AbstractProtocol初始化信息: 初始化ProtocolHandler ["http-bio-9080"] 2014年2月13日,下午1:25:22 org.apache.coyote.AbstractProtocol初始化INFO:初始化 ProtocolHandler ["http-bio-9443"] 2014年2月13日,下午1:25:23 org.apache.coyote.AbstractProtocol初始化严重:初始化失败 与ProtocolHandler ["http-bio-9443"]关联的端点 发生:java.io.IOException:$ {jazz.connector.sslProtocol} SSLContext在以下位置不可用 org.apache.tomcat.util.net.jsse.JSSESocketFactory.init(JSSESocketFactory.java:475) ...
Feb 13, 2014 1:25:22 PM org.apache.coyote.AbstractProtocol init INFO: Initializing ProtocolHandler ["http-bio-9080"] Feb 13, 2014 1:25:22 PM org.apache.coyote.AbstractProtocol init INFO: Initializing ProtocolHandler ["http-bio-9443"] Feb 13, 2014 1:25:23 PM org.apache.coyote.AbstractProtocol init SEVERE: Failed to initialize end point associated with ProtocolHandler ["http-bio-9443"] Throwable occurred: java.io.IOException: ${jazz.connector.sslProtocol} SSLContext not available at org.apache.tomcat.util.net.jsse.JSSESocketFactory.init(JSSESocketFactory.java:475) ...
谢谢
推荐答案
I have refer this page to configure https (SSL ) for my local tomcat or tomcat in my eclipse.
After doing 3 steps mention above link, When i am trying to start my server I got below Exception during startup:
SEVERE: Failed to initialize end point associated with ProtocolHandler [http-bi o-8443] java.io.IOException: Cannot recover key at org.apache.tomcat.util.net.jsse.JSSESocketFactory.init(JSSESocketFactory.java:54
4)
因为它与以下异常有关:
Because it related with below exception :
java.io.IOException: Keystore was tampered with, or password was incorrect at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:772)
问题是当我尝试更改server.xml时,我没有在keystorePass
和keyPass
上提供正确的密码值,如下所示.
当我使用以下命令生成密钥库时,我已输入 changeit 作为密钥库的密码.但是当我在server.xml文件中配置https时,我提供了不同的密码.
Problem is when i try to change server.xml i did not supply correct password value on keystorePass
and keyPass
as below.
When i am generating keystore using below command I have entered changeit as password for keystore. But when i am configuring in server.xml file for https i was supplying different password.
命令:$Tomcat\bin>keytool -genkey -alias mkyong -keyalg RSA -keystore c:\mkyongkeystore
我有这个
<Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="c:\mkyongkeystore"
keystorePass="password" />
我更改为
<Connector port="443" protocol="HTTP/1.1" SSLEnabled="true"
maxThreads="150" scheme="https" secure="true"
clientAuth="false" sslProtocol="TLS"
keystoreFile="conf/srccodes.jks"
keystoreType="JKS"
keystorePass="changeit"
keyPass="changeit" />
对我有用.
这篇关于启动Tomcat未能初始化与ProtocolHandler关联的终点的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!