I am running Openhab 2.4.0 #build 1310 with the latest Fronius Binding. At least once a day the Fronius binding crashes and I need to restart the openhab.service to get it working again.
That is what I found in the log files so far:
2018-07-11 09:02:35.530 [WARN ] [mmon.WrappedScheduledExecutorService] - Scheduled runnable ended with an exception
java.lang.NullPointerException: null
at org.openhab.binding.fronius.handler.FroniusSymoInverterHandler.getValue(FroniusSymoInverterHandler.java:86) ~[?:?]
at org.openhab.binding.fronius.handler.FroniusBaseThingHandler.updateChannel(FroniusBaseThingHandler.java:99) ~[?:?]
at org.openhab.binding.fronius.handler.FroniusBaseThingHandler.updateChannels(FroniusBaseThingHandler.java:85) ~[?:?]
at org.openhab.binding.fronius.handler.FroniusSymoInverterHandler.refresh(FroniusSymoInverterHandler.java:58) ~[?:?]
at org.openhab.binding.fronius.handler.FroniusBridgeHandler.lambda$0(FroniusBridgeHandler.java:109) ~[?:?]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [?:?]
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) [?:?]
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) [?:?]
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) [?:?]
Sorry for the delay. Haven’t had the time before to set everything up proper. I tried to remove every fronius thing (binding, things, items, links) and started over again but still the same outcome.
It works for an hour or something and than it throws that exception and it is not working any more.
I added the log of a successfull run and of the exception itsself.
I suggest logging this defect in the OH2 issue tracker.
Never mind. I see a whole slew of NPEs have already been logged here.
I could quash the null pointer exception, but the code isn’t doing any of the bounds checking it should. It’d be good to see if the original author can get engaged.