Jetty unable to find its SSL keystore in Fabric registry: FileNotFoundException: /opt/fuse/jboss-fuse-6.3/profile:fuse.jks (No such file or directory)

Solution Verified - Updated -

Issue

When securing the Jetty based HTTP server in Fabric by following Enabling SSL/TLS for Jetty in a Fabric and placing the SSL keystore into the Fabric registry (not on file system!) then the container may raise the following error at start-up. As a result the web console may not be accessible (it loads an empty page in the browser).

    2018-03-06 15:23:10,006 | WARN  | ender-2-thread-3 | AbstractLifeCycle                | 94 - org.eclipse.jetty.util - 9.2.21.v20170120 | FAILED SslContextFactory@64a11f87(profile:fuse.jks,profile:fuse.jks): java.io.FileNotFoundException: /opt/rh/jboss-fuse-6.3/profile:fuse.jks (No such file or directory)
    java.io.FileNotFoundException: /opt/rh/jboss-fuse-6.3/profile:fuse.jks (No such file or directory)
        at java.io.FileInputStream.open0(Native Method)[:1.8.0_121]
        at java.io.FileInputStream.open(FileInputStream.java:195)[:1.8.0_121]
        at java.io.FileInputStream.<init>(FileInputStream.java:138)[:1.8.0_121]
        at org.eclipse.jetty.util.resource.FileResource.getInputStream(FileResource.java:304)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.util.security.CertificateUtils.getKeyStore(CertificateUtils.java:43)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.util.ssl.SslContextFactory.loadKeyStore(SslContextFactory.java:871)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.util.ssl.SslContextFactory.doStart(SslContextFactory.java:273)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:106)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.server.SslConnectionFactory.doStart(SslConnectionFactory.java:64)[91:org.eclipse.jetty.server:9.2.21.v20170120]
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.util.component.ContainerLifeCycle.start(ContainerLifeCycle.java:132)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.util.component.ContainerLifeCycle.doStart(ContainerLifeCycle.java:106)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.server.AbstractConnector.doStart(AbstractConnector.java:256)[91:org.eclipse.jetty.server:9.2.21.v20170120]
        at org.eclipse.jetty.server.AbstractNetworkConnector.doStart(AbstractNetworkConnector.java:81)[91:org.eclipse.jetty.server:9.2.21.v20170120]
        at org.eclipse.jetty.server.ServerConnector.doStart(ServerConnector.java:236)[91:org.eclipse.jetty.server:9.2.21.v20170120]
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.eclipse.jetty.server.Server.doStart(Server.java:366)[91:org.eclipse.jetty.server:9.2.21.v20170120]
        at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:68)[94:org.eclipse.jetty.util:9.2.21.v20170120]
        at org.ops4j.pax.web.service.jetty.internal.JettyServerImpl$1.start(JettyServerImpl.java:312)[115:org.ops4j.pax.web.pax-web-jetty:4.3.4]
        at org.ops4j.pax.web.service.internal.HttpServiceStarted.end(HttpServiceStarted.java:1096)[114:org.ops4j.pax.web.pax-web-runtime:4.3.4]
        at org.ops4j.pax.web.service.internal.HttpServiceProxy.end(HttpServiceProxy.java:417)[114:org.ops4j.pax.web.pax-web-runtime:4.3.4]
        at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisitorWC.end(RegisterWebAppVisitorWC.java:380)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at org.ops4j.pax.web.extender.war.internal.model.WebApp.accept(WebApp.java:692)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebAppDependencyListener.register(WebAppPublisher.java:237)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebAppDependencyListener.addingService(WebAppPublisher.java:182)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at or.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebAppDependencyListener.addingService(WebAppPublisher.java:135)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932)[karaf.jar:2.4.0.redhat-630329]
        at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:1)[karaf.jar:2.4.0.redhat-630329]
        at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)[karaf.jar:2.4.0.redhat-630329]
        at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183)[karaf.jar:2.4.0.redhat-630329]
        at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:317)[karaf.jar:2.4.0.redhat-630329]
        at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:261)[karaf.jar:2.4.0.redhat-630329]
        at org.ops4j.pax.web.extender.war.internal.WebAppPublisher.publish(WebAppPublisher.java:101)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at org.ops4j.pax.web.extender.war.internal.WebObserver.deploy(WebObserver.java:219)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at org.ops4j.pax.web.extender.war.internal.WebObserver$1.doStart(WebObserver.java:179)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at org.ops4j.pax.web.extender.war.internal.extender.SimpleExtension.start(SimpleExtension.java:59)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at org.ops4j.pax.web.extender.war.internal.extender.AbstractExtender$1.run(AbstractExtender.java:281)[275:org.ops4j.pax.web.pax-web-extender-war:4.3.4]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_121]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_121]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)[:1.8.0_121]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)[:1.8.0_121]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_121]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_121]
        at java.lang.Thread.run(Thread.java:745)[:1.8.0_121]

Environment

  • JBoss Fuse 6.3
    • before roll-up 8 (6.3 R8)
  • Fabric managed environment
  • SSL secured web console (Pax-Web)
  • SSL keystore stored in Fabric registry, not on file system

Subscriber exclusive content

A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.

Current Customers and Partners

Log in for full access

Log In
Close

Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.