OH2 Z-Wave refactoring and testing... and SECURITY

How can I acces this?

Just go to the dashboard and select the REST interface. It might be easier to look in the json file though if you’re not familiar.

Same info as what? It looks ok right?

Yes it looks correct. Same info as in the xml file and as in Habmin.

The items that I have that through errors when saving associations (newly added or had the associations removed and readded) are missing <endpoint>0</endpoint> in the associationGroups section of the xml. In spot checking some of my other devices, I am finding some others that I do not recall touching that are also missing <endpoint>0</endpoint>. The jsondb file shows the same as the xmls.

  <associationGroups>
    <entry>
      <int>1</int>
      <associationGroup>
        <index>1</index>
        <associations>
          <associationMember>
            <node>1</node>
          </associationMember>
        </associations>
      </associationGroup>
    </entry>
  </associationGroups>

  "group_1": [
    "node_1"
  ],

The missing endpoint is perfectly ok in itself. There are just different ways to set associations (multichannel, or the normal association class, and the multichannel has 2 options in itself).

Really it’s hard to say what’s happening without the log showing the error, which appears to be an issue. I’ll see if I can find this tonight.

Edit:

I get the same error but with a 500 error response when I send this in the body through the REST UI or from command line:

{"group_1":["node_1_0"]}

But this goes through without error:

{"test_1":["node_1_0"]}

I have a test in the binding that I believe does exactly this and it seems to work ok. Is this for a specific device or all devices?

https://github.com/openhab/org.openhab.binding.zwave/blob/development/src/test/java/org/openhab/binding/zwave/test/handler/ZWaveThingHandlerTest.java#L127

Let’s see if we can get better logging in ESH.

For all zwave devices, I can create and modify everything I’ve tried, except for group_1. I get the error when trying to modify group_1, or even trying to create it when it does not exist. One thing I noted was that if a device has {"group_1":["node_1_0"]} and I send the same, there is no error, but the configuration changes to {“group_1”:[“node_1”]}. Sending it a second time gets the 500 error.

For non-wave devices, it was mixed results. I can modify Network Health devices as I wish, even with group_1. For Zigbee devices, I get a 200 response but nothing is changed in the configuration, no matter what I try to create or modify.

Understood… I was curious to test out the REST UI for configuration of Things, so tested this out while playing with it.

So the next question then - does group_1 in all your devices allow multiple nodes in the group, or are they all lifeline type groups that only allow 1 node?

If instead of {"group_1":["node_1_0"]} you use {"group_1":"node_1_0"} what happens? Both formats should work and both will be used.

Thanks.

All of my devices can have multiple associations for group_1.

This gave the same error.

Ok, thanks. Not sure if it helps too much, but I’ll take a look at the code in this area and see if I can spot something before we get decent logging added…

2 Likes

@chris , in version 2.2.0.201710012213, were you possibly working in an area that could cause these errors for one of my newly added devices? They could very well be self inflicted though (ugly story) :roll_eyes:.

After an OH startup (before initialized):

2017-Oct-13 01:58:34.997 [ERROR] [eclipse.smarthome.core.thing.internal.ThingManager] - Exception occurred while initializing handler of thing 'zwave:device:07cb40a2:node91': java.lang.NullPointerException
java.util.concurrent.ExecutionException: java.lang.NullPointerException
        at java.util.concurrent.FutureTask.report(FutureTask.java:122) [?:?]
        at java.util.concurrent.FutureTask.get(FutureTask.java:206) [?:?]
        at org.eclipse.smarthome.core.common.SafeMethodCaller.callAsynchronous(SafeMethodCaller.java:194) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.SafeMethodCaller.call(SafeMethodCaller.java:83) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.SafeMethodCaller.call(SafeMethodCaller.java:67) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingManager.doInitializeHandler(ThingManager.java:633) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingManager.initializeHandler(ThingManager.java:568) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingManager.registerAndInitializeHandler(ThingManager.java:955) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingManager.thingUpdated(ThingManager.java:443) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyTrackers(ThingRegistryImpl.java:217) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:140) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:1) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractRegistry.updated(AbstractRegistry.java:183) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractRegistry.updated(AbstractRegistry.java:1) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListeners(AbstractProvider.java:57) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListenersAboutUpdatedElement(AbstractProvider.java:81) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractManagedProvider.update(AbstractManagedProvider.java:126) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractRegistry.update(AbstractRegistry.java:215) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingManager$2.run(ThingManager.java:302) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        at java.lang.Thread.run(Thread.java:748) [?:?]
Caused by: java.lang.NullPointerException
        at java.util.Collections$UnmodifiableMap.<init>(Collections.java:1446) ~[?:?]
        at java.util.Collections.unmodifiableMap(Collections.java:1433) ~[?:?]
        at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveConfigurationCommandClass.getParameters(ZWaveConfigurationCommandClass.java:189) ~[?:?]
        at org.openhab.binding.zwave.handler.ZWaveThingHandler.updateNodeProperties(ZWaveThingHandler.java:1485) ~[?:?]
        at org.openhab.binding.zwave.handler.ZWaveThingHandler.bridgeStatusChanged(ZWaveThingHandler.java:494) ~[?:?]
        at org.openhab.binding.zwave.handler.ZWaveThingHandler.initialize(ZWaveThingHandler.java:177) ~[?:?]
        at org.eclipse.smarthome.core.thing.internal.ThingManager$6.call(ThingManager.java:636) ~[?:?]
        at org.eclipse.smarthome.core.thing.internal.ThingManager$6.call(ThingManager.java:1) ~[?:?]
        at org.eclipse.smarthome.core.common.SafeMethodCaller$CallableWrapper.call(SafeMethodCaller.java:181) ~[?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:?]
        ... 3 more

After an OH startup (after initialized):

2017-Oct-13 17:46:25.066 [ERROR] [eclipse.smarthome.core.thing.internal.ThingManager] - Exception occurred during notification about bridge status change on thing 'zwave:device:07cb40a2:node91': null
java.lang.NullPointerException: null
        at java.util.Collections$UnmodifiableMap.<init>(Collections.java:1446) [?:?]
        at java.util.Collections.unmodifiableMap(Collections.java:1433) [?:?]
        at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveConfigurationCommandClass.getParameters(ZWaveConfigurationCommandClass.java:189) [219:org.openhab.binding.zwave:2.2.0.201710012213]
        at org.openhab.binding.zwave.handler.ZWaveThingHandler.updateNodeProperties(ZWaveThingHandler.java:1485) [219:org.openhab.binding.zwave:2.2.0.201710012213]
        at org.openhab.binding.zwave.handler.ZWaveThingHandler.bridgeStatusChanged(ZWaveThingHandler.java:494) [219:org.openhab.binding.zwave:2.2.0.201710012213]
        at org.eclipse.smarthome.core.thing.internal.ThingManager$9.run(ThingManager.java:787) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
        at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [?:?]
        at java.lang.Thread.run(Thread.java:748) [?:?]

After changing a Label in Habmin:

2017-Oct-13 02:29:30.744 [ERROR] [eclipse.smarthome.core.thing.internal.ThingManager] - Exception occurred while calling thing updated at ThingHandler 'org.openhab.binding.zwave.handler.ZWaveThingHandler@6ac2236d': java.lang.NullPointerException
java.util.concurrent.ExecutionException: java.lang.NullPointerException
        at java.util.concurrent.FutureTask.report(FutureTask.java:122) [?:?]
        at java.util.concurrent.FutureTask.get(FutureTask.java:206) [?:?]
        at org.eclipse.smarthome.core.common.SafeMethodCaller.callAsynchronous(SafeMethodCaller.java:194) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.SafeMethodCaller.call(SafeMethodCaller.java:83) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.SafeMethodCaller.call(SafeMethodCaller.java:67) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingManager.thingUpdated(ThingManager.java:423) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyTrackers(ThingRegistryImpl.java:217) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:140) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.thing.internal.ThingRegistryImpl.notifyListenersAboutUpdatedElement(ThingRegistryImpl.java:1) [107:org.eclipse.smarthome.core.thing:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractRegistry.updated(AbstractRegistry.java:183) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractRegistry.updated(AbstractRegistry.java:1) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListeners(AbstractProvider.java:57) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractProvider.notifyListenersAboutUpdatedElement(AbstractProvider.java:81) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.core.common.registry.AbstractManagedProvider.update(AbstractManagedProvider.java:126) [100:org.eclipse.smarthome.core:0.9.0.201709260841]
        at org.eclipse.smarthome.io.rest.core.internal.thing.ThingResource.update(ThingResource.java:347) [117:org.eclipse.smarthome.io.rest.core:0.9.0.201709260841]
        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.glassfish.jersey.server.model.internal.ResourceMethodInvocationHandlerFactory$1.invoke(ResourceMethodInvocationHandlerFactory.java:81) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher$1.run(AbstractJavaResourceMethodDispatcher.java:144) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.invoke(AbstractJavaResourceMethodDispatcher.java:161) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.internal.JavaResourceMethodDispatcherProvider$ResponseOutInvoker.doDispatch(JavaResourceMethodDispatcherProvider.java:160) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.internal.AbstractJavaResourceMethodDispatcher.dispatch(AbstractJavaResourceMethodDispatcher.java:99) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.ResourceMethodInvoker.invoke(ResourceMethodInvoker.java:389) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:347) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.model.ResourceMethodInvoker.apply(ResourceMethodInvoker.java:102) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.ServerRuntime$2.run(ServerRuntime.java:326) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.internal.Errors$1.call(Errors.java:271) [159:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.internal.Errors$1.call(Errors.java:267) [159:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.internal.Errors.process(Errors.java:315) [159:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.internal.Errors.process(Errors.java:297) [159:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.internal.Errors.process(Errors.java:267) [159:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.process.internal.RequestScope.runInScope(RequestScope.java:317) [159:org.glassfish.jersey.core.jersey-common:2.22.2]
        at org.glassfish.jersey.server.ServerRuntime.process(ServerRuntime.java:305) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.server.ApplicationHandler.handle(ApplicationHandler.java:1154) [160:org.glassfish.jersey.core.jersey-server:2.22.2]
        at org.glassfish.jersey.servlet.WebComponent.serviceImpl(WebComponent.java:473) [157:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at org.glassfish.jersey.servlet.WebComponent.service(WebComponent.java:427) [157:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:388) [157:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:341) [157:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at org.glassfish.jersey.servlet.ServletContainer.service(ServletContainer.java:228) [157:org.glassfish.jersey.containers.jersey-container-servlet-core:2.22.2]
        at com.eclipsesource.jaxrs.publisher.internal.ServletContainerBridge.service(ServletContainerBridge.java:76) [17:com.eclipsesource.jaxrs.publisher:5.3.1.201602281253]
        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:845) [87:org.eclipse.jetty.servlet:9.3.14.v20161028]
        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:584) [87:org.eclipse.jetty.servlet:9.3.14.v20161028]
        at org.ops4j.pax.web.service.jetty.internal.HttpServiceServletHandler.doHandle(HttpServiceServletHandler.java:71) [173:org.ops4j.pax.web.pax-web-jetty:6.0.6]
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:548) [84:org.eclipse.jetty.security:9.3.14.v20161028]
        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:226) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1180) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext.doHandle(HttpServiceContext.java:284) [173:org.ops4j.pax.web.pax-web-jetty:6.0.6]
        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:512) [87:org.eclipse.jetty.servlet:9.3.14.v20161028]
        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:185) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1112) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.ops4j.pax.web.service.jetty.internal.JettyServerHandlerCollection.handle(JettyServerHandlerCollection.java:80) [173:org.ops4j.pax.web.pax-web-jetty:6.0.6]
        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:134) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.eclipse.jetty.server.Server.handle(Server.java:534) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:320) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:251) [86:org.eclipse.jetty.server:9.3.14.v20161028]
        at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:273) [78:org.eclipse.jetty.io:9.3.14.v20161028]
        at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:95) [78:org.eclipse.jetty.io:9.3.14.v20161028]
        at org.eclipse.jetty.io.SelectChannelEndPoint$2.run(SelectChannelEndPoint.java:93) [78:org.eclipse.jetty.io:9.3.14.v20161028]
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.executeProduceConsume(ExecuteProduceConsume.java:303) [89:org.eclipse.jetty.util:9.3.14.v20161028]
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.produceConsume(ExecuteProduceConsume.java:148) [89:org.eclipse.jetty.util:9.3.14.v20161028]
        at org.eclipse.jetty.util.thread.strategy.ExecuteProduceConsume.run(ExecuteProduceConsume.java:136) [89:org.eclipse.jetty.util:9.3.14.v20161028]
        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:671) [89:org.eclipse.jetty.util:9.3.14.v20161028]
        at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:589) [89:org.eclipse.jetty.util:9.3.14.v20161028]
        at java.lang.Thread.run(Thread.java:748) [?:?]
Caused by: java.lang.NullPointerException
        at java.util.Collections$UnmodifiableMap.<init>(Collections.java:1446) ~[?:?]
        at java.util.Collections.unmodifiableMap(Collections.java:1433) ~[?:?]
        at org.openhab.binding.zwave.internal.protocol.commandclass.ZWaveConfigurationCommandClass.getParameters(ZWaveConfigurationCommandClass.java:189) ~[?:?]
        at org.openhab.binding.zwave.handler.ZWaveThingHandler.updateNodeProperties(ZWaveThingHandler.java:1485) ~[?:?]
        at org.openhab.binding.zwave.handler.ZWaveThingHandler.bridgeStatusChanged(ZWaveThingHandler.java:494) ~[?:?]
        at org.openhab.binding.zwave.handler.ZWaveThingHandler.initialize(ZWaveThingHandler.java:177) ~[?:?]
        at org.eclipse.smarthome.core.thing.binding.BaseThingHandler.thingUpdated(BaseThingHandler.java:190) ~[?:?]
        at org.eclipse.smarthome.core.thing.internal.ThingManager$4.call(ThingManager.java:427) ~[?:?]
        at org.eclipse.smarthome.core.thing.internal.ThingManager$4.call(ThingManager.java:1) ~[?:?]
        at org.eclipse.smarthome.core.common.SafeMethodCaller$CallableWrapper.call(SafeMethodCaller.java:181) ~[?:?]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) ~[?:?]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) ~[?:?]
        ... 1 more

Nope - not touched anything in the configuration management for a while. My guess is that there may be an issue with XMLs and the list isn’t loading correctly.

1 Like

Thank you for the guess! Removing the xml and restarting OH seems to have cleared it up.

Is a new Build with currrent db changes planned?
Cheers

Yes - I’ll do one tonight or tomorrow.

2 Likes

Updated this morning to 2.2.0.201710142330 (openHAB #1061), unfortunately still the same problem with association groups for lifeline: NPE in openhab.log, not much in zwave debug log:

tried setting the lifeline assocation group from a mains powered Fibaro rollershutter to openHAB controller:

and a battery powered D-Link motion sensor:

:

Edit: after restarting openHAB I often see a

2017-10-15 07:49:34.058 [WARN ] [ig.xml.osgi.XmlDocumentBundleTracker] - The XML document '/ESH-INF/binding/binding.xml' in module 'org.openhab.binding.zwave' could not be parsed: The XmlConfigDescriptionProvider must not be null!
java.lang.IllegalArgumentException: The XmlConfigDescriptionProvider must not be null!
	at org.eclipse.smarthome.core.binding.xml.internal.BindingInfoXmlProvider.<init>(BindingInfoXmlProvider.java:55) [102:org.eclipse.smarthome.core.binding.xml:0.9.0.201710101404]
	at org.eclipse.smarthome.core.binding.xml.internal.XmlBindingInfoProvider.createDocumentProvider(XmlBindingInfoProvider.java:136) [102:org.eclipse.smarthome.core.binding.xml:0.9.0.201710101404]
	at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.acquireXmlDocumentProvider(XmlDocumentBundleTracker.java:176) [98:org.eclipse.smarthome.config.xml:0.9.0.201710101404]
	at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.addingObject(XmlDocumentBundleTracker.java:201) [98:org.eclipse.smarthome.config.xml:0.9.0.201710101404]
	at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.parseDocuments(XmlDocumentBundleTracker.java:345) [98:org.eclipse.smarthome.config.xml:0.9.0.201710101404]
	at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.processBundle(XmlDocumentBundleTracker.java:331) [98:org.eclipse.smarthome.config.xml:0.9.0.201710101404]
	at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker.access$3(XmlDocumentBundleTracker.java:326) [98:org.eclipse.smarthome.config.xml:0.9.0.201710101404]
	at org.eclipse.smarthome.config.xml.osgi.XmlDocumentBundleTracker$2.run(XmlDocumentBundleTracker.java:302) [98:org.eclipse.smarthome.config.xml:0.9.0.201710101404]
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
	at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180) [?:?]
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293) [?:?]
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [?:?]
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [?:?]
	at java.lang.Thread.run(Thread.java:748) [?:?]

Hi,
just got my first Z-Wave device (DanaLock v3) with Security and thought to give it a try to include it in the network.
i’m currently running on the latest snapshot (Build #1061) am i right that i still need to manuall install the JAR file from the link above to get the security part up and running?

i actually triert that, removed all my z-Wave things, uninstalled the old binding and removed the old XMLs and installed the JAR file.
i got all nodes back running except my battery devices, they lost permanently the connection to the controller. even after excluding and re-including them.
went back to the binding included in the snapshot and all devices are back to normal.
however in both versions i did not get the Danalock by some reason fully initialized.
image

sorry if any of this was already covert earlier, but i could not find anything what helped to solve this problem.

build failed I think :