tobof / openhab-addons

The next-generation open Home Automation Bus (openHAB)
Eclipse Public License 2.0
39 stars 30 forks source link

Exception on disposing binding when item configured #4

Closed andreacioni closed 8 years ago

andreacioni commented 8 years ago

Hi Tim, during my tests I've noticed that when I have thing inside the demo.things file the binding fail to stop due to a strange exception.

2016-02-02 11:07:51.350 [ERROR] [org.openhab.binding.mysensors ] - [org.openhab.binding.mysensors.internal.MySensorsHandlerFactory(178)] The deactivate method has thrown an exception java.lang.IllegalStateException: Could not update status, because callback is missing at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.updateStatus(BaseThingHandler.java:346) at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.updateStatus(BaseThingHandler.java:373) at org.openhab.binding.mysensors.handler.MySensorsHandler.dispose(MySensorsHandler.java:69) at org.eclipse.smarthome.core.thing.binding.BaseThingHandlerFactory.unregisterHandler(BaseThingHandlerFactory.java:109) at org.eclipse.smarthome.core.thing.binding.BaseThingHandlerFactory.deactivate(BaseThingHandlerFactory.java:74) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[:1.8.0_40] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[:1.8.0_40] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[:1.8.0_40] at java.lang.reflect.Method.invoke(Method.java:497)[:1.8.0_40] at org.apache.felix.scr.impl.helper.BaseMethod.invokeMethod(BaseMethod.java:222)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.helper.BaseMethod.access$500(BaseMethod.java:37)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.helper.BaseMethod$Resolved.invoke(BaseMethod.java:615)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.helper.BaseMethod.invoke(BaseMethod.java:499)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.helper.ActivateMethod.invoke(ActivateMethod.java:295)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.manager.SingleComponentManager.disposeImplementationObject(SingleComponentManager.java:342)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.manager.SingleComponentManager.deleteComponent(SingleComponentManager.java:157)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.manager.AbstractComponentManager.doDeactivate(AbstractComponentManager.java:783)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.manager.AbstractComponentManager.deactivateInternal(AbstractComponentManager.java:757)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.manager.AbstractComponentManager.dispose(AbstractComponentManager.java:550)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.config.ConfigurableComponentHolder.disposeComponents(ConfigurableComponentHolder.java:725)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.BundleComponentActivator.dispose(BundleComponentActivator.java:530)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.Activator.disposeComponents(Activator.java:414)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.Activator.access$300(Activator.java:53)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.scr.impl.Activator$ScrExtension.destroy(Activator.java:273)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.utils.extender.AbstractExtender$2.run(AbstractExtender.java:290)[28:org.apache.felix.scr:2.0.2] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)[:1.8.0_40] at java.util.concurrent.FutureTask.run(FutureTask.java:266)[:1.8.0_40] at org.apache.felix.utils.extender.AbstractExtender.destroyExtension(AbstractExtender.java:312)[28:org.apache.felix.scr:2.0.2] at org.apache.felix.utils.extender.AbstractExtender.bundleChanged(AbstractExtender.java:186)[28:org.apache.felix.scr:2.0.2] at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:902)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEventPrivileged(EquinoxEventPublisher.java:165)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:75)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.internal.framework.EquinoxEventPublisher.publishBundleEvent(EquinoxEventPublisher.java:67)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.internal.framework.EquinoxContainerAdaptor.publishModuleEvent(EquinoxContainerAdaptor.java:102)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.container.Module.publishEvent(Module.java:466)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.container.Module.doStop(Module.java:624)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.container.Module.stop(Module.java:488)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.eclipse.osgi.internal.framework.EquinoxBundle.stop(EquinoxBundle.java:420)[org.eclipse.osgi-3.10.2.v20150203-1939.jar:] at org.apache.karaf.bundle.command.Stop.executeOnBundle(Stop.java:38)[32:org.apache.karaf.bundle.core:4.0.3] at org.apache.karaf.bundle.command.BundlesCommand.doExecute(BundlesCommand.java:64)[32:org.apache.karaf.bundle.core:4.0.3] at org.apache.karaf.bundle.command.BundlesCommand.execute(BundlesCommand.java:54)[32:org.apache.karaf.bundle.core:4.0.3] at org.apache.karaf.shell.impl.action.command.ActionCommand.execute(ActionCommand.java:83)[48:org.apache.karaf.shell.core:4.0.3] at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:67)[48:org.apache.karaf.shell.core:4.0.3] at org.apache.karaf.shell.impl.console.osgi.secured.SecuredCommand.execute(SecuredCommand.java:87)[48:org.apache.karaf.shell.core:4.0.3] at org.apache.felix.gogo.runtime.Closure.executeCmd(Closure.java:480)[48:org.apache.karaf.shell.core:4.0.3] at org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:406)[48:org.apache.karaf.shell.core:4.0.3] at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)[48:org.apache.karaf.shell.core:4.0.3] at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:182)[48:org.apache.karaf.shell.core:4.0.3] at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:119)[48:org.apache.karaf.shell.core:4.0.3] at org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:94)[48:org.apache.karaf.shell.core:4.0.3] at org.apache.karaf.shell.impl.console.ConsoleSessionImpl.run(ConsoleSessionImpl.java:270)[48:org.apache.karaf.shell.core:4.0.3] at java.lang.Thread.run(Thread.java:745)[:1.8.0_40] It seems that the OH2 fail on invoking a method of binding. Everything works if there aren't items configured for MySensors bridge.

tobof commented 8 years ago

I've not seen this error yet? Are you still able to reproduce it?

tobof commented 8 years ago

I've not seen this error in a long time.