var Timer BlinkingTimer = null
rule "Network Router OFF"
when
Item Router changed to OFF
then
logInfo("network", "Router is offline")
if(BlinkingTimer !== null){
BlinkingTimer.cancel()
BlinkingTimer = null
}
if(BlinkingTimer === null){
BlinkingTimer = createTimer(now, [ |
if(GPIO_OKLed.state==ON){
logInfo("network", "LED OFF")
GPIO_OKLed.sendCommand(OFF)
BlinkingTimer.reschedule(now.plusMillis(500))
}else{
logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
GPIO_OKLed.sendCommand(ON)
BlinkingTimer.reschedule(now.plusMillis(500))
}
])
}
end
rule "Network Router ON"
when
Item Router changed to ON
then
logInfo("network", "Router is online")
if(BlinkingTimer !== null){
BlinkingTimer.cancel()
BlinkingTimer = null
}
logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
GPIO_OKLed.sendCommand(ON)
end
log
2019-11-23 15:14:44.013 [INFO ] [lipse.smarthome.model.script.network] - Router is offline
2019-11-23 15:14:46.856 [INFO ] [lipse.smarthome.model.script.network] - LED is NULL, and will set ON
2019-11-23 15:14:46.835 [ERROR] [ntime.internal.engine.RuleEngineImpl] - Rule 'Network Router OFF': An error occurred during the script execution: Cannot resolve proxy: network.rules#/1
==> /var/log/openhab2/events.log <==
2019-11-23 15:14:47.223 [hingStatusInfoChangedEvent] - 'mqtt:systemBroker:embedded-mqtt-broker' changed from UNINITIALIZED to INITIALIZING
==> /var/log/openhab2/openhab.log <==
2019-11-23 15:14:47.021 [ERROR] [org.quartz.core.JobRunShell ] - Job DEFAULT.2019-11-23T15:14:44.106+02:00: Proxy for org.eclipse.xtext.xbase.lib.Procedures$Procedure0: [ | {
logInfo(<XStringLiteralImpl>,<XStringLiteralImpl>)
org.eclipse.xtext.xbase.impl.XIfExpressionImpl@17f1cd4
} ] threw an unhandled Exception:
java.lang.NullPointerException: cannot invoke method public abstract boolean org.eclipse.smarthome.model.script.actions.Timer.reschedule(org.joda.time.base.AbstractInstant) on null
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1071) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1061) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._invokeFeature(XbaseInterpreter.java:1047) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeFeature(XbaseInterpreter.java:992) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:151) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:772) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:220) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:447) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:228) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:464) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:244) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:447) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:228) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluate(XbaseInterpreter.java:190) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.ClosureInvocationHandler.doInvoke(ClosureInvocationHandler.java:46) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.AbstractClosureInvocationHandler.invoke(AbstractClosureInvocationHandler.java:29) ~[?:?]
at com.sun.proxy.$Proxy147.apply(Unknown Source) ~[?:?]
at org.eclipse.smarthome.model.script.internal.actions.TimerExecutionJob.execute(TimerExecutionJob.java:49) ~[?:?]
at org.quartz.core.JobRunShell.run(JobRunShell.java:202) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
==> /var/log/openhab2/events.log <==
2019-11-23 15:14:47.354 [hingStatusInfoChangedEvent] - 'mqtt:systemBroker:embedded-mqtt-broker' changed from INITIALIZING to OFFLINE (CONFIGURATION_ERROR): The system connection with the name embedded-mqtt-broker doesnt exist anymore.
==> /var/log/openhab2/openhab.log <==
2019-11-23 15:14:47.335 [ERROR] [org.quartz.core.ErrorLogger ] - Job (DEFAULT.2019-11-23T15:14:44.106+02:00: Proxy for org.eclipse.xtext.xbase.lib.Procedures$Procedure0: [ | {
logInfo(<XStringLiteralImpl>,<XStringLiteralImpl>)
org.eclipse.xtext.xbase.impl.XIfExpressionImpl@17f1cd4
} ] threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception.
at org.quartz.core.JobRunShell.run(JobRunShell.java:213) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:573) [107:org.eclipse.smarthome.core.scheduler:0.10.0.oh240]
Caused by: java.lang.NullPointerException: cannot invoke method public abstract boolean org.eclipse.smarthome.model.script.actions.Timer.reschedule(org.joda.time.base.AbstractInstant) on null
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1071) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1061) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._invokeFeature(XbaseInterpreter.java:1047) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeFeature(XbaseInterpreter.java:992) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:151) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:772) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:220) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:447) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:228) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:464) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:244) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:447) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:228) ~[?:?]
at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:226) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:204) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluate(XbaseInterpreter.java:190) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.ClosureInvocationHandler.doInvoke(ClosureInvocationHandler.java:46) ~[?:?]
at org.eclipse.xtext.xbase.interpreter.impl.AbstractClosureInvocationHandler.invoke(AbstractClosureInvocationHandler.java:29) ~[?:?]
at com.sun.proxy.$Proxy147.apply(Unknown Source) ~[?:?]
at org.eclipse.smarthome.model.script.internal.actions.TimerExecutionJob.execute(TimerExecutionJob.java:49) ~[?:?]
at org.quartz.core.JobRunShell.run(JobRunShell.java:202) ~[?:?]
... 1 more
var Timer BlinkingTimer = null
rule "Network Router OFF"
when
Item Router changed to OFF
then
logInfo("network", "Router is offline")
if(BlinkingTimer !== null){
BlinkingTimer?.cancel()
}
if(BlinkingTimer === null){
BlinkingTimer = createTimer(now), [ |
if(GPIO_OKLed.state==ON){
logInfo("network", "LED OFF")
GPIO_OKLed.sendCommand(OFF)
BlinkingTimer.reschedule(now.plusMillis(500))
}else{
logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
GPIO_OKLed.sendCommand(ON)
BlinkingTimer.reschedule(now.plusMillis(500))
}
]
}
end
rule "Network Router ON"
when
Item Router changed to ON
then
logInfo("network", "Router is online")
if(BlinkingTimer !== null){
BlinkingTimer.cancel()
BlinkingTimer = null
}
logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
GPIO_OKLed.sendCommand(ON)
end
Try it like this. VSCode is a great tool to help with systax.
var Timer BlinkingTimer = null
rule "Network Router OFF"
when
Item Router changed to OFF
then
logInfo("network", "Router is offline")
if(BlinkingTimer !== null){
BlinkingTimer?.cancel()
}
if(BlinkingTimer === null){
BlinkingTimer = createTimer(now) [ |
if(GPIO_OKLed.state==ON){
logInfo("network", "LED OFF")
GPIO_OKLed.sendCommand(OFF)
BlinkingTimer.reschedule(now.plusMillis(500))
}
else{
logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
GPIO_OKLed.sendCommand(ON)
BlinkingTimer.reschedule(now.plusMillis(500))
}
]
}
end
rule "Network Router ON"
when
Item Router changed to ON
then
logInfo("network", "Router is online")
if(BlinkingTimer !== null){
BlinkingTimer.cancel()
BlinkingTimer = null
}
logInfo("network", "LED is "+ GPIO_OKLed.state.toString() +", and will set ON")
GPIO_OKLed.sendCommand(ON)
end
After placing your rule in VSCode I thought I would correct myself about the ). You had it correct the first time as the ) must go after the ] if not using it like this BlinkingTimer = createTimer(now), [ |.
Note that cancelling a timer does not make it null - or rather, strictly speaking, make the variable you are using as a handle into null.
You must do that explicitly.
The magic question mark avoids an error if you try to cancel and the handle is already null. In other words, a lazy way to avoid testing for null first.
@A_Moktar did the code adjustments fix your issue? If not post any relevant logs and rule changes. If so please mark the topic solved by clicking the square box on the post that provided the solution.
Just signed back on … is OH still not up? Cleaning the cache does slow the startup process but it should come back up. If not check your using a good quality power supply as OH on Pi needs this.
2019-11-23 21:01:12.601 [INFO ] [org.eclipse.smarthome.ui.basic ] - FrameworkEvent INFO - org.eclipse.smarthome.ui.basic
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.basic""
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) [?:?]
2019-11-23 21:01:12.785 [INFO ] [org.eclipse.smarthome.ui.classic ] - FrameworkEvent INFO - org.eclipse.smarthome.ui.classic
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.classic""
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) [?:?]
2019-11-23 21:01:12.861 [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.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) [?:?]
2019-11-23 21:01:34.926 [INFO ] [.internal.GenericScriptEngineFactory] - Activated scripting support for ECMAScript
2019-11-23 21:01:57.543 [INFO ] [io.openhabcloud.internal.CloudClient] - Connected to the openHAB Cloud service (UUID = d2b7ddb8-6e81-4d67-a7d0-11c526d8e301, base URL = http://localhost:8080)
2019-11-23 21:02:14.408 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'my.items'
2019-11-23 21:02:15.074 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'weather.items'
2019-11-23 21:02:15.540 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'control.items'
2019-11-23 21:02:15.775 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'network.items'
2019-11-23 21:02:15.934 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'wirelessunit.items'
2019-11-23 21:02:18.372 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'rrd4j.persist'
2019-11-23 21:02:18.471 [INFO ] [el.core.internal.ModelRepositoryImpl] - Loading model 'mapdb.persist'
2019-11-23 21:02:19.652 [INFO ] [io.openhabcloud.internal.CloudClient] - Shutting down openHAB Cloud service connection
2019-11-23 21:02:19.810 [INFO ] [io.openhabcloud.internal.CloudClient] - Disconnected from the openHAB Cloud service (UUID = d2b7ddb8-6e81-4d67-a7d0-11c526d8e301, base URL = http://localhost:8080)
2019-11-23 21:02:20.595 [INFO ] [io.openhabcloud.internal.CloudClient] - Connected to the openHAB Cloud service (UUID = d2b7ddb8-6e81-4d67-a7d0-11c526d8e301, base URL = http://localhost:8080)
i tryed to update and upgrade and fix permissions , nothing new , every restart stop on the same line in log above
Almost an aside now - I’m a bit suspicious that your original rule failed when it tried to reschedule the timer immediately after its creation. That’s to say, when creating a timer with target time of “now” and not much code to run before the attempted reschedule, I think you can beat the creation processing. Attempting rescheduling before the timer handle is set to the BlinkingTimer variable.
That’s my interpretation of error Cannot resolve proxy: network.rules#/1
I would make the initial creation allow a little delay BlinkingTimer = createTimer(now.plusMillis(50), [ |