2 回答

TA貢獻1836條經(jīng)驗 獲得超4個贊
在Tomcat 9.0.x中,通過更新server.xml文件的Connector元素中的協(xié)議屬性值來消除以下異常。
例外:
27-Mar-2020 08:06:45.726 SEVERE [main] org.apache.catalina.util.LifecycleBase.handleSubClassException Failed to initialize component [Connector[org.apache.coyote.http11.Http11Protocol-auto-null]]
org.apache.catalina.LifecycleException: Protocol handler instantiation failed
27-Mar-2020 08:06:44.929 SEVERE [main] org.apache.catalina.connector.Connector.<init> Protocol handler instantiation failed
java.lang.ClassNotFoundException: org.apache.coyote.http11.Http11Protocol
異常語法:
<Connector port="9443"
protocol="org.apache.coyote.http11.Http11Protocol"
maxThreads="200"
SSLEnabled="true"
scheme="https"
secure="true"
clientAuth="want"
sslProtocol="TLS"
connectionTimeout="20000"
keystoreFile="D:\\MYAPP\\DINESH_LOMTE\\dlomte_keystore.jks"
keystorePass="cardinal"
keystoreType="JKS"
truststoreFile="D:\\MYAPP\\DINESH_LOMTE\\dlomte_truststore.jks"
truststorePass="cardinal"
truststoreType="JKS"
/>
在上面的連接器元素語法中更新協(xié)議屬性值
從
protocol="org.apache.coyote.http11.Http11Protocol"
到
protocol="org.apache.coyote.http11.Http11NioProtocol"
注意:為了使用顯式協(xié)議而不是依賴自動切換機制,可以使用以下值之一,根據(jù)您的要求選擇
org.apache.coyote.http11.Http11NioProtocol - non blocking Java NIO connector
org.apache.coyote.http11.Http11Nio2Protocol - non blocking Java NIO2 connector
org.apache.coyote.http11.Http11AprProtocol - the APR/native connector.

TA貢獻1775條經(jīng)驗 獲得超11個贊
我遇到過同樣的問題。它開始初始化一個非 io-blocking 連接器
05-Nov-2018 16:33:57.080 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
但是您的配置建議使用 io 阻塞連接器
Http11Protocol
所以也許你會嘗試使用其他連接器。在我的情況下,更改Http11Protocol
為Http11NioProtocol
有助于修復此錯誤。
添加回答
舉報