openhab / openhab-addons

Add-ons for openHAB
https://www.openhab.org/
Eclipse Public License 2.0
1.86k stars 3.58k forks source link

[verisure] NPE in VerisureAlarmsDTO #16867

Closed jannegpriv closed 3 months ago

jannegpriv commented 3 months ago

NPE in VerisureAlarmsDTO$ArmState:

2024-06-12 22:43:45.507 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception: java.lang.NullPointerException: Cannot invoke "java.util.List.equals(Object)" because "this.errorCodes" is null at org.openhab.binding.verisure.internal.dto.VerisureAlarmsDTO$ArmState.equals(VerisureAlarmsDTO.java:169) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureBaseThingDTO$Installation.equals(VerisureBaseThingDTO.java:360) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureBaseThingDTO$Data.equals(VerisureBaseThingDTO.java:232) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureBaseThingDTO.equals(VerisureBaseThingDTO.java:150) ~[?:?] at org.openhab.binding.verisure.internal.dto.VerisureAlarmsDTO.equals(VerisureAlarmsDTO.java:49) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.notifyListenersIfChanged(VerisureSession.java:572) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.updateAlarmStatus(VerisureSession.java:635) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.updateStatus(VerisureSession.java:588) ~[?:?] at org.openhab.binding.verisure.internal.VerisureSession.refresh(VerisureSession.java:130) ~[?:?] at org.openhab.binding.verisure.internal.handler.VerisureBridgeHandler.refreshAndUpdateStatus(VerisureBridgeHandler.java:168) ~[?:?] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) ~[?:?] at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:305) ~[?:?] at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:305) ~[?:?] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) [?:?] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) [?:?] at java.lang.Thread.run(Thread.java:840) [?:?]

Expected Behavior

Should handle a null value here.

Current Behavior

Binding does not update values correctly.

Possible Solution

Handle that this.errorCodes can be null.

Your Environment

Running on openHAB 4.1.1.

openhab-bot commented 3 months ago

This issue has been mentioned on openHAB Community. There might be relevant details there:

https://community.openhab.org/t/resolve-error-after-adding-binding-verisure-as-run-requirement/156708/1