[SOLVED] PaperUI gone after clearing cache

Dear Community!

I had some problems with a binding, so I had to clear the cache, tmp… After restarting the server, the PaperUI is not visible and I get this error:

2018-09-03 22:26:50.618 [INFO ] [org.eclipse.smarthome.ui.paper      ] - FrameworkEvent INFO - org.eclipse.smarthome.ui.paper

org.osgi.framework.BundleException: The bundle class path entry "patch/" could not be found for the bundle "osgi.identity; type="osgi.bundle"; version:Version="0.10.0.oh230"; osgi.identity="org.eclipse.smarthome.ui.paper"; singleton:="true""

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassPathEntry(ClasspathManager.java:174) [?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.buildClasspath(ClasspathManager.java:152) [?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.<init>(ClasspathManager.java:81) [?:?]

	at org.eclipse.osgi.internal.loader.EquinoxClassLoader.<init>(EquinoxClassLoader.java:43) [?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.createClassLoaderPrivledged(BundleLoader.java:316) [?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.getModuleClassLoader(BundleLoader.java:233) [?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.findEntries(BundleLoader.java:819) [?:?]

	at org.eclipse.osgi.container.ModuleWiring.findEntries(ModuleWiring.java:289) [?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.findResource(ManifestLocalization.java:199) [?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.lookupResourceBundle(ManifestLocalization.java:130) [?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getResourceBundle(ManifestLocalization.java:101) [?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getHeaders(ManifestLocalization.java:64) [?:?]

	at org.eclipse.osgi.storage.BundleInfo$Generation.getHeaders(BundleInfo.java:125) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.privGetHeaders(EquinoxBundle.java:462) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:457) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:451) [?:?]

	at org.apache.felix.metatype.internal.MetaTypeServiceImpl.getMetaTypeInformation(MetaTypeServiceImpl.java:129) [2:org.apache.felix.metatype:1.1.6]

	at org.apache.karaf.config.command.completers.MetaCompleter$1.callWith(MetaCompleter.java:71) [44:org.apache.karaf.config.core:4.1.5]

	at org.apache.karaf.config.command.completers.MetaCompleter$1.callWith(MetaCompleter.java:63) [44:org.apache.karaf.config.core:4.1.5]

	at org.apache.karaf.config.core.impl.MetaServiceCaller.withMetaTypeService(MetaServiceCaller.java:36) [44:org.apache.karaf.config.core:4.1.5]

	at org.apache.karaf.config.command.completers.MetaCompleter.updateMeta(MetaCompleter.java:63) [44:org.apache.karaf.config.core:4.1.5]

	at org.apache.karaf.config.command.completers.MetaCompleter.init(MetaCompleter.java:49) [44:org.apache.karaf.config.core:4.1.5]

	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.karaf.shell.impl.action.command.ManagerImpl.instantiate(ManagerImpl.java:103) [12:org.apache.karaf.shell.core:4.1.5]

	at org.apache.karaf.shell.impl.action.command.ManagerImpl.instantiate(ManagerImpl.java:60) [12:org.apache.karaf.shell.core:4.1.5]

	at org.apache.karaf.shell.impl.action.command.ManagerImpl.register(ManagerImpl.java:151) [12:org.apache.karaf.shell.core:4.1.5]

	at org.apache.karaf.shell.impl.action.osgi.CommandExtension.updateState(CommandExtension.java:168) [12:org.apache.karaf.shell.core:4.1.5]

	at org.apache.karaf.shell.impl.action.osgi.CommandExtension.start(CommandExtension.java:113) [12:org.apache.karaf.shell.core:4.1.5]

	at org.apache.felix.utils.extender.AbstractExtender.createExtension(AbstractExtender.java:254) [12:org.apache.karaf.shell.core:4.1.5]

	at org.apache.felix.utils.extender.AbstractExtender.modifiedBundle(AbstractExtender.java:227) [12:org.apache.karaf.shell.core:4.1.5]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:482) [?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerModified(BundleTracker.java:415) [?:?]

	at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:232) [?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(BundleTracker.java:444) [?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:908) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]

	at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:213) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:120) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:112) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:168) [?:?]

	at org.eclipse.osgi.container.Module.publishEvent(Module.java:476) [?:?]

	at org.eclipse.osgi.container.Module.start(Module.java:467) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1614) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) [?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]

Does someone know why this happened? How can I solve it?

Make sure you still have the folders. Clearing cache and tmp should only delete the content of those two folders.

Which folders should I check?

cache and tmp

Yes I have checked it and the folders are there… Not even empty, so it can write files there…
I have used this set of commands for clearing cache:

sudo service openhab2 stop && sudo rm -rf /var/lib/openhab2/cache/* && sudo rm -rf /var/lib/openhab2/tmp/* && sudo reboot

I have updated to 2.4.0 Milestone and the PaperUI is back…

1 Like

I cleared the cache also. I now have no openhab ui’s at all. My cache folder has an “org.eclipse.osgi” file in there, but nothing else. My tmp folder doesn’t have it either. Do I need to reinstall everything again. I’m a newbie, so I haven’t made too many files yet.

you could try adding these lines into the addons.cfg file (under services folder):

package = expert
ui =  basic,paper,habpanel

Restart after adding these lines

You need to be patient: all packages needs to be downloaded again after the folders got emptied, this can take a while, especially if you are on a slow computer.

This happened to me again. I have cleared the cache, now the PaperUI is not visible on the Dashboard, and when accessing directly, the openHAB theme is also gone from the PaperUI. What could I do to get it running again?

Maybe still a problem of missing folders?

Yes I have them. I used the cli command to clear the cache. Everything else is working fine.

Maybe this helps:

No, I have all ui in the addons.cfg “installed”

Then I am out of ideas, sorry.

May I suggest taking a look at what

systemctl status openhab2

Tells you, it might hint at something being stuck.

Or look at the state of bundles in the karaf console?

I had an issue with PaperUI and HabPanel, where the JAR files were completely trashed and causing the start up to stall.

In the end,

I removed the DEB files from the apt cache

And ran

apt-get install openhab2 --reinstall

This pulled down a fresh copy of the Deb file and everything has been great ever since.

I must say, the fact that the JSON files are backed up each time openHAB2 stops is pretty amazing, it’s prevented some serious failures :smile:


Curiously, something similar happened with the openHAB2 node modules the the openhabian / NodeRed script was trying to install.

Again, finding the faulty cache was the solution.

The service tells nothing unusual. The PaperUI is still usable, only the “icon” gone from the Dashboard and the theme is gone from the PaperUI (now it is blue), but works fine…

That’s rather annoying.

I’d still guess at a broken file somewhere… But where and what is a mystery.

For me it seems that’s because of the inconsistency during the startup. I have cleared the cache and something is not started in an order as it should, that caused this issue, because it happens randomly, not everytime.

However this is what should be solved as soon as possible. Usually a cache cleanup causes more issues for me than bringing solutions…

This is the error I get during startup (again the same as before, but I couldn’t find a solution for it):

org.osgi.framework.BundleException: The bundle class path entry "patch/" could not be found for the bundle "osgi.identity; type="osgi.bundle"; version:Version="0.10.0.oh240"; osgi.identity="org.eclipse.smarthome.ui.paper"; singleton:="true""

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.findClassPathEntry(ClasspathManager.java:174) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.buildClasspath(ClasspathManager.java:152) ~[?:?]

	at org.eclipse.osgi.internal.loader.classpath.ClasspathManager.<init>(ClasspathManager.java:81) ~[?:?]

	at org.eclipse.osgi.internal.loader.EquinoxClassLoader.<init>(EquinoxClassLoader.java:43) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.createClassLoaderPrivledged(BundleLoader.java:316) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.getModuleClassLoader(BundleLoader.java:233) ~[?:?]

	at org.eclipse.osgi.internal.loader.BundleLoader.findEntries(BundleLoader.java:819) ~[?:?]

	at org.eclipse.osgi.container.ModuleWiring.findEntries(ModuleWiring.java:289) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.findResource(ManifestLocalization.java:199) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.lookupResourceBundle(ManifestLocalization.java:130) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getResourceBundle(ManifestLocalization.java:101) ~[?:?]

	at org.eclipse.osgi.storage.ManifestLocalization.getHeaders(ManifestLocalization.java:64) ~[?:?]

	at org.eclipse.osgi.storage.BundleInfo$Generation.getHeaders(BundleInfo.java:125) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.privGetHeaders(EquinoxBundle.java:462) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:457) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.getHeaders(EquinoxBundle.java:451) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.getAllHeaders(BaseActivator.java:133) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.addConsumerWeavingData(BaseActivator.java:95) ~[?:?]

	at org.apache.aries.spifly.ConsumerBundleTrackerCustomizer.addingBundle(ConsumerBundleTrackerCustomizer.java:37) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:469) ~[?:?]

	at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding(BundleTracker.java:415) ~[?:?]

	at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256) ~[?:?]

	at org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:183) ~[?:?]

	at org.osgi.util.tracker.BundleTracker.open(BundleTracker.java:156) ~[?:?]

	at org.apache.aries.spifly.BaseActivator.start(BaseActivator.java:79) ~[?:?]

	at org.apache.aries.spifly.dynamic.DynamicWeavingActivator.start(DynamicWeavingActivator.java:37) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:779) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl$3.run(BundleContextImpl.java:1) ~[?:?]

	at java.security.AccessController.doPrivileged(Native Method) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.startActivator(BundleContextImpl.java:772) ~[?:?]

	at org.eclipse.osgi.internal.framework.BundleContextImpl.start(BundleContextImpl.java:729) [?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle.startWorker0(EquinoxBundle.java:933) ~[?:?]

	at org.eclipse.osgi.internal.framework.EquinoxBundle$EquinoxModule.startWorker(EquinoxBundle.java:309) ~[?:?]

	at org.eclipse.osgi.container.Module.doStart(Module.java:581) ~[?:?]

	at org.eclipse.osgi.container.Module.start(Module.java:449) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1634) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.incStartLevel(ModuleContainer.java:1614) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.doContainerStartLevel(ModuleContainer.java:1585) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1528) ~[?:?]

	at org.eclipse.osgi.container.ModuleContainer$ContainerStartLevel.dispatchEvent(ModuleContainer.java:1) ~[?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230) [?:?]

	at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340) [?:?]