openHAB 2.3 Release Candidate available!

I get this in the last few builds:

2018-05-23 07:20:52.826 [WARN ] [rm.AbstractFileTransformationService] - Could not transform 'NULL' with the file 'beaufort.scale' : Scale can only be used with numeric inputs

Any way to get rid of that.

Also I get a lot of:

2018-05-23 07:20:15.283 [WARN ] [.core.transform.TransformationHelper] - Cannot get service reference for transformation service of type MAP

2018-05-23 07:20:15.307 [WARN ] [.core.transform.TransformationHelper] - Couldn't transform value because transformation service of type 'MAP' is not available.

2018-05-23 07:20:15.311 [WARN ] [.core.transform.TransformationHelper] - Cannot get service reference for transformation service of type MAP

2018-05-23 07:20:15.314 [WARN ] [.core.transform.TransformationHelper] - Couldn't transform value because transformation service of type 'MAP' is not available.

2018-05-23 07:20:15.387 [WARN ] [.core.transform.TransformationHelper] - Cannot get service reference for transformation service of type MAP

2018-05-23 07:20:15.391 [WARN ] [.core.transform.TransformationHelper] - Couldn't transform value because transformation service of type 'MAP' is not available.

2018-05-23 07:20:15.452 [WARN ] [.core.transform.TransformationHelper] - Cannot get service reference for transformation service of type SCALE

2018-05-23 07:20:15.465 [WARN ] [.core.transform.TransformationHelper] - Couldn't transform value because transformation service of type 'SCALE' is not available.

2018-05-23 07:20:15.533 [WARN ] [.core.transform.TransformationHelper] - Cannot get service reference for transformation service of type JS

2018-05-23 07:20:15.554 [WARN ] [.core.transform.TransformationHelper] - Couldn't transform value because transformation service of type 'JS' is not available.

At start up just after the items files loading.
Is there a way to get the transforms to load before the items?

This will also occur after saving an .items file with tags in it, while OH is running. The warnings are gone after an OH restart.

Both fixed with fixed small issues in demo files by kaikreuzer · Pull Request #715 · openhab/openhab-distro · GitHub.

1 Like

Not sure how to fix this. Could you enter an issue at ESH for it, please? If anyone has an idea how to fix it, please do so - if not, it should be ok to leave it as is for the release if it does not have any functional impact.

Could you please enable this debug logger:

log:set DEBUG org.eclipse.smarthome.core.audio

and post the resulting exception (which will then be logged next to this warning)?
What platform are you running on?

(Likely) same problem for me. Running on Pi3 with Zulu java 1.8.0_152-b76, I have been having to use alsa tools to (statically) set volume. I think it used to work long ago when I was still using Oracle java but can’t tell for sure.
EDIT: However, according to this, the same provlem happens on x86 and Oracle Java.

Calling setMasterVolume(float) gives

2018-05-23 12:11:41.149 [WARN ] [core.audio.internal.AudioManagerImpl] - An exception occurred while getting the volume of sink 'enhancedjavasound' : Cannot determine master volume level
java.io.IOException: Cannot determine master volume level
        at org.eclipse.smarthome.io.javasound.internal.JavaSoundAudioSink.getVolume(JavaSoundAudioSink.java:118) ~[?:?]
        at org.eclipse.smarthome.core.audio.internal.AudioManagerImpl.getVolume(AudioManagerImpl.java:184) ~[?:?]
        at org.eclipse.smarthome.core.audio.internal.AudioManagerImpl.play(AudioManagerImpl.java:122) ~[?:?]
        at org.eclipse.smarthome.core.audio.internal.AudioManagerImpl.playFile(AudioManagerImpl.java:164) ~[?:?]
        at org.eclipse.smarthome.core.audio.internal.AudioManagerImpl.playFile(AudioManagerImpl.java:144) ~[?:?]
        at org.eclipse.smarthome.model.script.actions.Audio.playSound(Audio.java:40) ~[?:?]
        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.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1085) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1060) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._invokeFeature(XbaseInterpreter.java:1046) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeFeature(XbaseInterpreter.java:991) ~[?:?]
        at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:143) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:901) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:864) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:223) ~[?:?]
        at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:219) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:446) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:227) ~[?:?]
        at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:219) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203) ~[?:?]
        at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluate(XbaseInterpreter.java:189) ~[?:?]
        at org.eclipse.smarthome.model.script.runtime.internal.engine.ScriptImpl.execute(ScriptImpl.java:82) ~[?:?]
        at org.eclipse.smarthome.model.rule.runtime.internal.engine.RuleEngineImpl.lambda$2(RuleEngineImpl.java:345) ~[?:?]
        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) [?:?]

I have some problems with linking items to a channel in PaperUI. I clicked on the blue button to link a channel in the Configuration -> Thing section, selected “Create new item”, confirmed it by clicking on “Link”. Popup remained open and nothing happened. The Item has been created in the background but the link didn’t establish.

Some more errors in the browser console - missing files / icons - and a dupes check after entering the Configuration -> Items section.

1 Like

Innogy smarthome binding is not working in RC1. OH2 with installed binding is not starting up, removing cache and tmp folders also does not help. After removing the binding from addons.cfg and trying to reinstall the following error messages are displayed:

13:01:52.372 [ERROR] [.core.karaf.internal.FeatureInstaller] - Failed installing ‘openhab-misc-lsp, openhab-binding-innogysmarthome, openhab-misc-myopenhab’: Unable to resolve root: missing requirement [root] osgi.identity; osgi.identity=openhab-binding-innogysmarthome; type=karaf.feature; version=“[2.3.0.RC1,2.3.0.RC1]”; filter:=“(&(osgi.identity=openhab-binding-innogysmarthome)(type=karaf.feature)(version>=2.3.0.RC1)(version<=2.3.0.RC1))” [caused by: Unable to resolve openhab-binding-innogysmarthome/2.3.0.RC1: missing requirement [openhab-binding-innogysmarthome/2.3.0.RC1] osgi.identity; osgi.identity=openhab-httpclient; type=karaf.feature]

The openhab-httpclient seems to be missing, trying to install from karaf leads to:

openhab> feature:install openhab-httpclient
Error executing command: No matching features for openhab-httpclient/0.0.0

Openhab-httpclient not exists on my installation (from apt unstable repo), installing esh-tp-httpclient does not solve the innogy issue:

openhab> feature:list |grep -i httpclient
esh-tp-httpclient │ 0.10.0.oh230RC1 │ x │ Started │ distro-2.3.0.RC1 │

No, but reduced logging level and moved exception handling one level up by kaikreuzer · Pull Request #5603 · eclipse-archived/smarthome · GitHub should remove those warnings from the log.

Thanks, excellent finding! Should be fixed with https://github.com/openhab/openhab2-addons/pull/3585.

I’m testing on Ubuntu 16.04.4 (amd64) and the Oracle 1.8.0_171 JVM. It’s same warning as @mstormi:

13:23:04.643 [WARN ] [.core.audio.internal.AudioManagerImpl] - An exception occurred while getting the volume of sink 'enhancedjavasound' : Cannot determine master volume level
java.io.IOException: Cannot determine master volume level
	at org.eclipse.smarthome.io.javasound.internal.JavaSoundAudioSink.getVolume(JavaSoundAudioSink.java:118) ~[?:?]
	at org.eclipse.smarthome.core.audio.internal.AudioManagerImpl.getVolume(AudioManagerImpl.java:184) ~[?:?]
	at org.eclipse.smarthome.core.audio.internal.AudioManagerImpl.play(AudioManagerImpl.java:122) ~[?:?]
	at org.eclipse.smarthome.core.audio.internal.AudioManagerImpl.stream(AudioManagerImpl.java:175) ~[?:?]
	at org.eclipse.smarthome.core.audio.internal.AudioManagerImpl.stream(AudioManagerImpl.java:169) ~[?:?]
	at org.eclipse.smarthome.model.script.actions.Audio.playStream(Audio.java:81) ~[?:?]
	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.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1085) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeOperation(XbaseInterpreter.java:1060) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._invokeFeature(XbaseInterpreter.java:1046) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.invokeFeature(XbaseInterpreter.java:991) ~[?:?]
	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.invokeFeature(ScriptInterpreter.java:143) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:901) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:864) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:223) ~[?:?]
	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:219) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:491) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:255) ~[?:?]
	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:219) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter._doEvaluate(XbaseInterpreter.java:446) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.doEvaluate(XbaseInterpreter.java:227) ~[?:?]
	at org.eclipse.smarthome.model.script.interpreter.ScriptInterpreter.doEvaluate(ScriptInterpreter.java:219) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.internalEvaluate(XbaseInterpreter.java:203) ~[?:?]
	at org.eclipse.xtext.xbase.interpreter.impl.XbaseInterpreter.evaluate(XbaseInterpreter.java:189) ~[?:?]
	at org.eclipse.smarthome.model.script.runtime.internal.engine.ScriptImpl.execute(ScriptImpl.java:82) ~[?:?]
	at org.eclipse.smarthome.model.rule.runtime.internal.engine.RuleEngineImpl.lambda$2(RuleEngineImpl.java:345) ~[?:?]
	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) [?:?]

When changing the volume on the openHAB 2.2.0 Demo it also does not work. It also does not log this warning.

I would claim that setting the master volume has actually never worked on Linux, so what is new is only the exception in the log. Or is anyone (@mstormi, @vzorglub) sure that it has been working before?

No that was not working before. Not a new issue. Would be nice if it worked though.
I posted it in another thread not related to the 2.3RC1

I’ve entered the following issue for this: [Paper UI] ngRepeat:dupes errors in browser console when loading Control page · Issue #5604 · eclipse-archived/smarthome · GitHub

Ok, thanks - that what I thought. I faintly had in mind that getting the system volume on Linux never worked (and I once spend a while trying to solve that, but I failed - so it would be up to someone else to make it eventually work!).
I have created Avoided exception on when playing a stream if sink volume cannot be determined by kaikreuzer · Pull Request #5605 · eclipse-archived/smarthome · GitHub, which should suppress the warning, so that we have the same behavior as on 2.2 again.

I know, that’s why I pinged you here :slight_smile:

I faced the same problem you described, but also another Paper UI related issue. Binding which creates channels dynamically in runtime, channels can’t be linked from paper UI. Nothing happens when icon is pressed and following is logged to browser console.

angular.min.js:107 TypeError: Cannot read property 'category' of null
at r.e.linkChannel (controllers.min.js:2)
at r.e.enableChannel (controllers.min.js:2)
at fn (eval at compile (angular.min.js:213), <anonymous>:4:550)
at r.$eval (angular.min.js:133)
at app.js:1
at r.$eval (angular.min.js:133)
at r.$apply (angular.min.js:134)
at HTMLButtonElement.<anonymous> (app.js:1)

I asked @henning to have a look at the Paper UI issues tonight - let’s touch wood that it is easy for him to fix!

Hello,

it is not possible to link Items in the Paper UI. This failure appeared already in the snapshot release just before RC1 was released. There is an item created but with no fuction.

Cheers
Dirk

I get warnings about mismatched characters in rules files that were OK with OH 2.2.

When I use this piece of code in a rules file:

val Procedures.Procedure2<Boolean, ArrayList<SwitchItem>> switchItems = [Boolean condition, ArrayList<SwitchItem> items |
	val newState = if (condition.booleanValue) ON else OFF
	items.filter[i | !i.state.equals(newState)].forEach[i | i.sendCommand(newState)]
]

These warnings are logged:

22:29:58.599 [WARN ] [del.core.internal.ModelRepositoryImpl] - Configuration model 'appliances.rules' has errors, therefore ignoring it: [21,73]: mismatched character ' ' expecting ']'
[21,91]: missing EOF at ','
[23,14]: mismatched character ' ' expecting ']'
[23,53]: mismatched character ' ' expecting ']'

Seems like I need to add white space to get rid of these warnings:

val Procedures.Procedure2<Boolean, ArrayList<SwitchItem>> switchItems = [ Boolean condition , ArrayList<SwitchItem> items |
	val newState = if (condition.booleanValue) ON else OFF
	items.filter [ i | !i.state.equals(newState) ].forEach[ i | i.sendCommand(newState) ]
]

Such warnings for whitespace are quite confusing.

Usually I now also see about 20 of these warnings when I start openHAB:

00:58:02.865 [WARN ] [internal.DiscoveryServiceRegistryImpl] - Inbox not set
00:58:02.865 [WARN ] [internal.DiscoveryServiceRegistryImpl] - Inbox not set
00:58:02.866 [WARN ] [internal.DiscoveryServiceRegistryImpl] - Inbox not set
00:58:02.867 [WARN ] [internal.DiscoveryServiceRegistryImpl] - Inbox not set
00:58:02.867 [WARN ] [internal.DiscoveryServiceRegistryImpl] - Inbox not set
00:58:02.868 [WARN ] [internal.DiscoveryServiceRegistryImpl] - Inbox not set

There are times they don’t get logged. But then when I restart openHAB they do get logged again.