пт, 25 окт. 2024 г. в 12:38, Lucian Jurj <lj...@neverfailgroup.com>: > [skip] > > 24-Oct-2024 12:27:14.078 INFO [main] org.apache.coyote.AbstractProtocol.init > Initializing ProtocolHandler ["http-nio-9728"] > 24-Oct-2024 12:27:14.109 INFO [main] org.apache.coyote.AbstractProtocol.init > Initializing ProtocolHandler ["https-openssl-nio-9727"] > 24-Oct-2024 12:27:14.156 SEVERE [main] > org.apache.catalina.util.LifecycleBase.handleSubClassException Failed to > initialize component [Connector["https-openssl-nio-9727"]] > org.apache.catalina.LifecycleException: Protocol handler > initialization failed > at > org.apache.catalina.connector.Connector.initInternal(Connector.java:1027) > at > org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:122) > at > org.apache.catalina.core.StandardService.initInternal(StandardService.java:525) > at > org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:122) > at > org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:986) > at > org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:122) > at > org.apache.catalina.startup.Catalina.load(Catalina.java:686) > at > org.apache.catalina.startup.Catalina.load(Catalina.java:709) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) > at java.lang.reflect.Method.invoke(Method.java:498) > at > org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:302) > at > org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:472) > Caused by: java.lang.IllegalArgumentException: C:\Program > Files\Neverfail\tomcat\ssl\NFKeyStore.jks (The system cannot find the path > specified) > at > org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:115) > at > org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl(AbstractJsseEndpoint.java:71) > at > org.apache.tomcat.util.net.NioEndpoint.bind(NioEndpoint.java:228) > at > org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1373) > at > org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1386) > at > org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:663) > at > org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java:77) > at > org.apache.catalina.connector.Connector.initInternal(Connector.java:1025) > ... 13 more > Caused by: java.io.FileNotFoundException: C:\Program > Files\Neverfail\tomcat\ssl\NFKeyStore.jks (The system cannot find the path > specified) > at java.io.FileInputStream.open0(Native Method) > at java.io.FileInputStream.open(FileInputStream.java:195) > at java.io.FileInputStream.<init>(FileInputStream.java:138) > at java.io.FileInputStream.<init>(FileInputStream.java:93) > at > sun.net.www.protocol.file.FileURLConnection.connect(FileURLConnection.java:90) > at > sun.net.www.protocol.file.FileURLConnection.getInputStream(FileURLConnection.java:188) > at > org.apache.catalina.startup.CatalinaBaseConfigurationSource.getResource(CatalinaBaseConfigurationSource.java:121) > at > org.apache.tomcat.util.net.SSLUtilBase.getStore(SSLUtilBase.java:210) > at > org.apache.tomcat.util.net.SSLHostConfigCertificate.getCertificateKeystore(SSLHostConfigCertificate.java:254) > at > org.apache.tomcat.util.net.SSLUtilBase.getKeyManagers(SSLUtilBase.java:308) > at > org.apache.tomcat.util.net.openssl.OpenSSLUtil.getKeyManagers(OpenSSLUtil.java:108) > at > org.apache.tomcat.util.net.SSLUtilBase.createSSLContext(SSLUtilBase.java:268) > at > org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:113) > ... 20 more > 24-Oct-2024 12:27:14.172 INFO [main] > org.apache.catalina.startup.Catalina.load Server initialization in [1772] > milliseconds > 24-Oct-2024 12:27:14.203 INFO [main] > org.apache.catalina.core.StandardService.startInternal Starting service > [Catalina] > 24-Oct-2024 12:27:14.203 INFO [main] > org.apache.catalina.core.StandardEngine.startInternal Starting Servlet > engine: [Apache Tomcat/9.0.96] > 24-Oct-2024 12:27:14.234 INFO [main] > org.apache.catalina.startup.HostConfig.deployWAR Deploying web application > archive [C:\Program > Files\Neverfail\tomcat\apache-tomcat-9.0.96\webapps\hbws.war] > 24-Oct-2024 12:27:45.864 INFO [main] org.apache.coyote.AbstractProtocol.stop > Stopping ProtocolHandler ["https-openssl-nio-9727"] > 24-Oct-2024 12:27:50.868 INFO [main] org.apache.coyote.AbstractProtocol.start > Starting ProtocolHandler ["https-openssl-nio-9727"] > 24-Oct-2024 12:27:50.883 INFO [main] > org.apache.tomcat.util.net.AbstractEndpoint.logCertificate Connector > [https-openssl-nio-9727], TLS virtual host [_default_], certificate type > [UNDEFINED] configured from keystore [../ssl/NFKeyStore.jks] using alias > [nfhb_private_certificate] with trust store [null] >
Looking at "https-openssl-nio-9727" connector (ignoring "http-nio-9728") I see > 24-Oct-2024 12:27:14.109 INFO [main] org.apache.coyote.AbstractProtocol.init > Initializing ProtocolHandler ["https-openssl-nio-9727"] > 24-Oct-2024 12:27:14.156 SEVERE [main] > org.apache.catalina.util.LifecycleBase.handleSubClassException Failed to > initialize component [Connector["https-openssl-nio-9727"]] > org.apache.catalina.LifecycleException: Protocol handler > initialization failed ... > 24-Oct-2024 12:27:45.864 INFO [main] org.apache.coyote.AbstractProtocol.stop > Stopping ProtocolHandler ["https-openssl-nio-9727"] > 24-Oct-2024 12:27:50.868 INFO [main] org.apache.coyote.AbstractProtocol.start > Starting ProtocolHandler ["https-openssl-nio-9727"] Thus failed init(), followed by stop() and start(). There is no attempt to re-run init(). Looking at org.apache.catalina.util.LifecycleBase, I think that init() results in LifecycleState.FAILED state, and that there is a bug in the start() method. In case of FAILED state the LifecycleState.start() method calls stop() and goes further to starting. The current issue demonstrates that this behaviour is wrong. Maybe make separate error states, INIT_FAILED (aka not initialized), START_FAILED (not started). Starting a non-initialized component is a bad idea. Automatically re-initializing a connector may not work as intended, as there exist configurations where init() is called with different privileges than start(). (See "Downgrading user" in https://commons.apache.org/proper/commons-daemon/jsvc.html BTW, please note the org.apache.catalina.startup.EXIT_ON_INIT_FAILURE system property. Documented here: https://tomcat.apache.org/tomcat-11.0-doc/config/systemprops.html https://tomcat.apache.org/tomcat-9.0-doc/config/systemprops.html Best regards, Konstantin Kolinko --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org For additional commands, e-mail: users-h...@tomcat.apache.org