Am trying to start confluence using SSL but get an error
Asked by Karan Khurana:

I have done all the configuration in the Server.XML for SSL as well as installed certificates in the keystore as needed. I also changed the base path of the instance to https and port 8443 and I restarted confluence but when I try to load it via browser, I get the unable to connect error. In the logs I found the following exceptions:

02-Sep-2020 12:02:55.222 SEVERE \[main\] org.apache.catalina.util.LifecycleBase.handleSubClassException Failed to initialize component \[Connector\[org.apache.coyote.http11.Http11Nio2Protocol-8443\]\]  
org.apache.catalina.LifecycleException: Protocol handler initialization failed  
at org.apache.catalina.connector.Connector.initInternal(Connector.java:1013)  
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136)  
at org.apache.catalina.core.StandardService.initInternal(StandardService.java:533)  
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136)  
at org.apache.catalina.core.StandardServer.initInternal(StandardServer.java:1057)  
at org.apache.catalina.util.LifecycleBase.init(LifecycleBase.java:136)  
at org.apache.catalina.startup.Catalina.load(Catalina.java:584)  
at org.apache.catalina.startup.Catalina.load(Catalina.java:607)  
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)  
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)  
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)  
at java.base/java.lang.reflect.Method.invoke(Unknown Source)  
at org.apache.catalina.startup.Bootstrap.load(Bootstrap.java:303)  
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:473)  
Caused by: java.lang.IllegalArgumentException: Cannot obtain URL for the relative path \[C:\\Windows\\ServiceProfiles\\NetworkService/.keystore\]. Check that catalina.base is set.  
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:99)  
at org.apache.tomcat.util.net.AbstractJsseEndpoint.initialiseSsl(AbstractJsseEndpoint.java:71)  
at org.apache.tomcat.util.net.Nio2Endpoint.bind(Nio2Endpoint.java:142)  
at org.apache.tomcat.util.net.AbstractEndpoint.bindWithCleanup(AbstractEndpoint.java:1141)  
at org.apache.tomcat.util.net.AbstractEndpoint.init(AbstractEndpoint.java:1154)  
at org.apache.coyote.AbstractProtocol.init(AbstractProtocol.java:581)  
at org.apache.coyote.http11.AbstractHttp11Protocol.init(AbstractHttp11Protocol.java:74)  
at org.apache.catalina.connector.Connector.initInternal(Connector.java:1010)  
... 13 more  
Caused by: java.io.IOException: Cannot obtain URL for the relative path \[C:\\Windows\\ServiceProfiles\\NetworkService/.keystore\]. Check that catalina.base is set.  
at org.apache.catalina.startup.CatalinaBaseConfigurationSource.getResource(CatalinaBaseConfigurationSource.java:110)  
at org.apache.tomcat.util.net.SSLUtilBase.getStore(SSLUtilBase.java:198)  
at org.apache.tomcat.util.net.SSLHostConfigCertificate.getCertificateKeystore(SSLHostConfigCertificate.java:206)  
at org.apache.tomcat.util.net.SSLUtilBase.getKeyManagers(SSLUtilBase.java:283)  
at org.apache.tomcat.util.net.SSLUtilBase.createSSLContext(SSLUtilBase.java:247)  
at org.apache.tomcat.util.net.AbstractJsseEndpoint.createSSLContext(AbstractJsseEndpoint.java:97)  
... 20 more  
Caused by: java.lang.IllegalArgumentException: Illegal character in opaque part at index 2: C:\\Windows\\ServiceProfiles\\NetworkService/.keystore  
at java.base/java.net.URI.create(Unknown Source)  
at java.base/java.net.URI.resolve(Unknown Source)  
at org.apache.catalina.startup.CatalinaBaseConfigurationSource.getURI(CatalinaBaseConfigurationSource.java:147)  
at org.apache.catalina.startup.CatalinaBaseConfigurationSource.getResource(CatalinaBaseConfigurationSource.java:108)  
... 25 more  
Caused by: java.net.URISyntaxException: Illegal character in opaque part at index 2: C:\\Windows\\ServiceProfiles\\NetworkService/.keystore  
at java.base/java.net.URI$Parser.fail(Unknown Source)  
at java.base/java.net.URI$Parser.checkChars(Unknown Source)  
at java.base/java.net.URI$Parser.parse(Unknown Source)  
at java.base/java.net.URI.\<init\>(Unknown Source)  
... 29 more


Answers:
author: repi
body: [@Karan Khurana](/t5/user/viewprofilepage/user-id/1146258)

In the path of your .keystore file, the system complains about an illegal character  
C: \\ Windows \\ ServiceProfiles \\ NetworkService / .keystore  
it doesn't have to be like this:  
C: \\ Windows \\ ServiceProfiles \\ NetworkService \\ .keystore  
Because you have a windows system

comments: author: Karan Khurana
body: Thanks, yes I created a new keystore and also had to change the location of JAVA installation from Program Files to a folder structure without spaces in the name (which is an odd requirement to be honest). But that worked.


Tags: confluence-server

server