Jetty Service failed to start

Ok I’m lost. I had OpenHAB up and running for a good few months until I went away for a few weeks and suddenly it’s gone down and I’m seeing errors that don’t quite make sense. On startup the log entries are as follows, and I’m really not sure what Jetty even is. A google search tells me it’s the HTML web server, but I don’t have any memory of it, and why would it just stop working.
It’s true that there’s no Jetty.xml at the ./opt/openhab/etc location, but I’m not sure what even needs to be there.

May 25 22:36:20 raspberrypi systemd[1]: Starting openHAB Home Automation Bus...
May 25 22:36:20 raspberrypi systemd[1]: Started openHAB Home Automation Bus.
May 25 22:36:20 raspberrypi start.sh[1752]: Launching the openHAB runtime...
May 25 22:36:29 raspberrypi start.sh[1752]: osgi> 2017-05-25 22:36:29.521 [WARN ] [.i.s.JettyServerServiceTracker] -
May 25 22:36:29 raspberrypi start.sh[1752]: java.io.FileNotFoundException: /opt/openhab/./etc/jetty.xml (No such file or directory)
May 25 22:36:29 raspberrypi start.sh[1752]: at java.io.FileInputStream.open0(Native Method) ~[na:1.8.0_131]
May 25 22:36:29 raspberrypi start.sh[1752]: at java.io.FileInputStream.open(FileInputStream.java:195) ~[na:1.8.0_131]
May 25 22:36:29 raspberrypi start.sh[1752]: at java.io.FileInputStream.<init>(FileInputStream.java:138) ~[na:1.8.0_131]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.jetty.util.resource.FileResource.getInputStream(FileResource.java:276) ~[na:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.jetty.osgi.boot.internal.serverfactory.ServerInstanceWrapper.configure(ServerInstanceWrapper.java:269) ~[na:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.jetty.osgi.boot.internal.serverfactory.ServerInstanceWrapper.start(ServerInstanceWrapper.java:156) ~[na:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.jetty.osgi.boot.internal.serverfactory.JettyServerServiceTracker.serviceChanged(JettyServerServiceTracker.java:112) ~[na:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:451) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.jetty.osgi.boot.internal.serverfactory.DefaultJettyAtJettyHomeHelper.startJettyAtJettyHome(DefaultJettyAtJettyHomeHelper.java:156) [org.eclipse.jetty.osgi.boot_8.1.3.v20120522.jar:8.1.3.v20120522]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.jetty.osgi.boot.JettyBootstrapActivator.start(JettyBootstrapActivator.java:119) [org.eclipse.jetty.osgi.boot_8.1.3.v20120522.jar:8.1.3.v20120522]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at java.security.AccessController.doPrivileged(Native Method) [na:1.8.0_131]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:390) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1176) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]
May 25 22:36:29 raspberrypi start.sh[1752]: at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [org.eclipse.osgi_3.8.2.v20130124-134944.jar:na]

The rules seem to be evaluated correctly, but I can’t access the web interface (neither the openhab.app sitemap or the alternate CometVISU I have installed).

I ran a apt-get update and apt-get upgrade, and upgraded to java8, which probably wasn’t a bad idea anyway, but that didn’t fix anything.

Any assistance much appreciated!
Thanks in advance.

Well, does the file /opt/openhab/etc/jetty.xml exist?

It should be /var/lib/openhab2/etc/jetty.xml for an automatic install. Not sure how that path could have suddenly appeared I’ll have a look to see if it’s happening for others.

@bradleyshaw did this happen after an update? Or did this suddenly happen?

I’m running openhab 1.8.3, and this happened independent of an update. Perhaps there was a power outage that caused the rpi to reboot, but other than that I changed nothing to trigger this happening.

An RPi losing power can corrupt the file system causing files to be lost or corrupted. You might be best off reinstalling OH.