openHAB 2 Paper UI - no addons button anymore?

Now I may have done something stupid, but I thought I was adding the ClassicUI via the PaperUI addon’s facility.

Refreshed the browser and lost the addons button in PaperUI, and the ClassicUI seems not to be installed either.

How do I get the “addons” button back? I have tried a full reboot with no luck, and can’t find any reference for this in PaperUI.

Interesting :slight_smile:

Maybe you set package = minimal in the OPENHAB_CONF/services/addons.cfg file ? (or selected minimal during the first startup of OH2?)

If not: Do you remember the steps that you took? (it would be useful for debugging if we can reproduce this).

Try the following: Edit your OPENHAB_CONF/services/addons.cfg file, set package = expert and restart OH2 to see if all is ok.

Chose Standard during the install. Have set package=expert in the addons.cfg (everything else was commented out). Restarted oh2 service and but still no extensions/config section.

From memory the steps were:

  • Install ClassicUI via PaperUI Extensions.
  • Go to the config section for the UI and set the default sitemap to “home”
  • browse back to :8080 expecting to see ClassicUI. Classic UI was not present.
  • Enter PaperUI and observed that Extensions button was now gone.

This appeared in the logs, when I restarted, but it makes no sense to me. Not sure if related :

2017-02-02 00:39:47.822 [INFO ] [org.eclipse.equinox.registry        ] - FrameworkEvent INFO - org.eclipse.equinox.registry
org.osgi.framework.BundleException: The bundle class path entry "runtime_registry_compatibility.jar" could not be found for the bundle "osgi.identity; osgi.identity="org.eclipse.equinox.registry"; type="
osgi.bundle"; version:Version="3.6.0.v20150318-1503"; singleton:="true""
        at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassPathEntry(ClasspathManager.java:176)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.buildClasspath(ClasspathManager.java:154)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.<init>(ClasspathManager.java:83)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.loader.EquinoxClassLoader.<init>(EquinoxClassLoader.java:57)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.loader.BundleLoader.createClassLoaderPrivledged(BundleLoader.java:277)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.loader.BundleLoader.getModuleClassLoader(BundleLoader.java:224)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.loader.BundleLoader.findEntries(BundleLoader.java:777)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.container.ModuleWiring.findEntries(ModuleWiring.java:289)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.storage.ManifestLocalization.findResource(ManifestLocalization.java:200)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.storage.ManifestLocalization.lookupResourceBundle(ManifestLocalization.java:131)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.storage.ManifestLocalization.getResourceBundle(ManifestLocalization.java:102)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.storage.ManifestLocalization.getHeaders(ManifestLocalization.java:63)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.storage.BundleInfo$Generation.getHeaders(BundleInfo.java:124)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.framework.EquinoxBundle.privGetHeaders(EquinoxBundle.java:471)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:466)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:460)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.apache.aries.spifly.BaseActivator.addConsumerWeavingData(BaseActivator.java:96)
        at org.apache.aries.spifly.ConsumerBundleTrackerCustomizer.addingBundle(ConsumerBundleTrackerCustomizer.java:37)
        at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:469)[org.osgi.core-6.0.0.jar:]
        at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:415)[org.osgi.core-6.0.0.jar:]
        at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)[org.osgi.core-6.0.0.jar:]
        at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183)[org.osgi.core-6.0.0.jar:]
        at org.osgi.util.tracker.BundleTracker.open(BundleTracker.java:156)[org.osgi.core-6.0.0.jar:]
        at org.apache.aries.spifly.BaseActivator.start(BaseActivator.java:81)
        at org.apache.aries.spifly.dynamic.DynamicWeavingActivator.start(DynamicWeavingActivator.java:37)
        at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:771)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at java.security.AccessController.doPrivileged(Native Method)[:1.8.0_121]
        at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:764)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:721)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:941)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:318)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.container.Module.doStart(Module.java:571)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.container.Module.start(Module.java:439)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1582)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1562)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1533)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1476)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]
        at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)[org.eclipse.osgi-3.10.101.v20150820-1432.jar:]


2017-02-02 00:39:53.293 [WARN ] [raf.features.internal.osgi.Activator] - Error starting activator
java.io.IOException: Expected value at 1:1
        at org.apache.karaf.features.internal.util.JsonReader.error(JsonReader.java:337)[8:org.apache.karaf.features.core:4.0.8]
        at org.apache.karaf.features.internal.util.JsonReader.expected(JsonReader.java:333)[8:org.apache.karaf.features.core:4.0.8]
        at org.apache.karaf.features.internal.util.JsonReader.readValue(JsonReader.java:93)[8:org.apache.karaf.features.core:4.0.8]
        at org.apache.karaf.features.internal.util.JsonReader.parse(JsonReader.java:58)[8:org.apache.karaf.features.core:4.0.8]
        at org.apache.karaf.features.internal.util.JsonReader.read(JsonReader.java:52)[8:org.apache.karaf.features.core:4.0.8]
        at org.apache.karaf.features.internal.region.DigraphHelper.readDigraph(DigraphHelper.java:112)[8:org.apache.karaf.features.core:4.0.8]
        at org.apache.karaf.features.internal.region.DigraphHelper.loadDigraph(DigraphHelper.java:70)[8:org.apache.karaf.features.core:4.0.8]
        at org.apache.karaf.features.internal.osgi.Activator.doStart(Activator.java:130)[8:org.apache.karaf.features.core:4.0.8]
        at org.apache.karaf.util.tracker.BaseActivator.run(BaseActivator.java:246)[8:org.apache.karaf.features.core:4.0.8]
        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.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)[:1.8.0_121]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)[:1.8.0_121]

Did you solve this?
Same happend to me when the power was gone in the house, i think some of the json files got corrupted because i had to add all things again.

Here is my error message:

2017-03-19 15:45:21.411 [WARN ] [raf.features.internal.osgi.Activator] - Error starting activator
java.io.IOException: Expected value at 1:1
at org.apache.karaf.features.internal.util.JsonReader.error(JsonReader.java:337)[8:org.apache.karaf.features.core:4.0.8]
at org.apache.karaf.features.internal.util.JsonReader.expected(JsonReader.java:333)[8:org.apache.karaf.features.core:4.0.8]
at org.apache.karaf.features.internal.util.JsonReader.readValue(JsonReader.java:93)[8:org.apache.karaf.features.core:4.0.8]
at org.apache.karaf.features.internal.util.JsonReader.parse(JsonReader.java:58)[8:org.apache.karaf.features.core:4.0.8]
at org.apache.karaf.features.internal.util.JsonReader.read(JsonReader.java:52)[8:org.apache.karaf.features.core:4.0.8]
at org.apache.karaf.features.internal.region.DigraphHelper.readDigraph(DigraphHelper.java:112)[8:org.apache.karaf.features.core:4.0.8]
at org.apache.karaf.features.internal.region.DigraphHelper.loadDigraph(DigraphHelper.java:70)[8:org.apache.karaf.features.core:4.0.8]
at org.apache.karaf.features.internal.osgi.Activator.doStart(Activator.java:130)[8:org.apache.karaf.features.core:4.0.8]
at org.apache.karaf.util.tracker.BaseActivator.run(BaseActivator.java:246)[8:org.apache.karaf.features.core:4.0.8]
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)[:1.8.0_111]
at java.util.concurrent.FutureTask.run(Unknown Source)[:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)[:1.8.0_111]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)[:1.8.0_111]
at java.lang.Thread.run(Unknown Source)[:1.8.0_111]

I probably have the same issue here. After a power off to add some S0 power meters to my home installation, OpenHAB2 does not start anymore: