This page last changed on Nov 22, 2013 by florian.

Hello,
This is my First post here. However I'm using Openremote since ~6 months,
I've been trying the developper Controller, but my current design is not working at all on it (tryed 2.1 and 2.2).
I'm using only KNX, virtual rules and JSON commands.

The Iphone App goes in an infinit loop of loading.

When I'm using the controller 2.0.2 everything is going well, the logs are close to void. The Iphone App is loaded properly, and work well.
You can find below the issue I get

on XML-parser.log:
...
DEBUG 2013-11-22 16:45:22,184 (XML): A switch sensor (Name = 'Chauffage Chambre Maxime (Radiateurs Etat)', ID = 2586970) has an incomplete <state> element mapping, the value attribute is missing in <state name = on/>.
DEBUG 2013-11-22 16:45:22,185 (XML): A switch sensor (Name = 'Chauffage Chambre Maxime (Radiateurs Etat)', ID = 2586970) has an incomplete <state> element mapping, the value attribute is missing in <state name = off/>.
...

on Dev.log
2013-11-22 16:48:15,233 ERROR HTTP\-Thread\-9: CommandException occurs
org.openremote.controller.config.ControllerXMLChangedException: The content of controller.xml had changed.
at org.openremote.controller.service.impl.StatusCommandServiceImpl.readFromCache(StatusCommandServiceImpl.java:68)
at org.openremote.controller.rest.StatusCommandRESTServlet.handleRequest(StatusCommandRESTServlet.java:63)
at org.openremote.controller.rest.RESTAPI.doPost(RESTAPI.java:159)
at org.openremote.controller.rest.RESTAPI.doGet(RESTAPI.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.openremote.controller.rest.support.json.JSONCallbackFilter.doFilter(JSONCallbackFilter.java:63)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:78)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:354)
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:744)
2013-11-22 16:49:13,328 ERROR HTTP\-Thread\-10: CommandException occurs
org.openremote.controller.config.ControllerXMLChangedException: The content of controller.xml had changed.
at org.openremote.controller.service.impl.StatusCommandServiceImpl.readFromCache(StatusCommandServiceImpl.java:68)
at org.openremote.controller.rest.StatusCommandRESTServlet.handleRequest(StatusCommandRESTServlet.java:63)
at org.openremote.controller.rest.RESTAPI.doPost(RESTAPI.java:159)
at org.openremote.controller.rest.RESTAPI.doGet(RESTAPI.java:112)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.openremote.controller.rest.support.json.JSONCallbackFilter.doFilter(JSONCallbackFilter.java:63)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:78)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:77)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:286)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:354)
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:744)
.....

on KNX.log I have:

ERROR 2013-11-22 16:46:48,147 (KNX): Service failed
org.openremote.controller.protocol.knx.ip.KnxIpException: Service failed, no ACK
at org.openremote.controller.protocol.knx.ip.IpTunnelClient.service(IpTunnelClient.java:84)
at org.openremote.controller.protocol.knx.KNXIpConnectionManager$KNXConnectionImpl.service(KNXIpConnectionManager.java:850)
at org.openremote.controller.protocol.knx.KNXIpConnectionManager$KNXConnectionImpl.send(KNXIpConnectionManager.java:670)
at org.openremote.controller.protocol.knx.KNXCommand.write(KNXCommand.java:328)
at org.openremote.controller.protocol.knx.GroupValueWrite.send(GroupValueWrite.java:117)
at org.openremote.controller.model.Command.execute(Command.java:230)
at org.openremote.controller.model.Command.execute(Command.java:199)
at org.openremote.controller.statuscache.CommandFacade.command(CommandFacade.java:80)
at org.openremote.controller.statuscache.CommandFacade.command(CommandFacade.java:57)
at org.openremote.controller.model.event.Rule_Chauffe_eau_ON_0.defaultConsequence(Rule_Chauffe_eau_ON_0.java:7)
at org.openremote.controller.model.event.Rule_Chauffe_eau_ON_0DefaultConsequenceInvoker.evaluate(Rule_Chauffe_eau_ON_0DefaultConsequenceInvoker.java:25)
at org.drools.common.DefaultAgenda.fireActivation(DefaultAgenda.java:917)
at org.drools.common.DefaultAgenda.fireNextItem(DefaultAgenda.java:856)
at org.drools.common.DefaultAgenda.fireAllRules(DefaultAgenda.java:1071)
at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:785)
at org.drools.common.AbstractWorkingMemory.fireAllRules(AbstractWorkingMemory.java:751)
at org.drools.impl.StatefulKnowledgeSessionImpl.fireAllRules(StatefulKnowledgeSessionImpl.java:218)
at org.openremote.controller.statuscache.rules.RuleEngine.push(RuleEngine.java:177)
at org.openremote.controller.statuscache.EventProcessorChain.push(EventProcessorChain.java:188)
at org.openremote.controller.statuscache.StatusCache.update(StatusCache.java:260)
at org.openremote.controller.model.sensor.Sensor.update(Sensor.java:342)
at org.openremote.controller.model.sensor.Sensor$DeviceReader.run(Sensor.java:608)
at java.lang.Thread.run(Thread.java:744)

there is the full logs I get:
logs.zip


logs.zip (application/x-zip-compressed)

any idea?

Posted by florian at Nov 28, 2013 17:10

The XML parser debug log is just a debug statement, not an error.

The KNX no ACK error I don't know about yet. Need to add more detail on the ACK failure handling. There's a similar issue reported here which may be related: http://www.openremote.org/display/forums/OpenRemote+Controller+crashing+on+Synology?focusedCommentId=22880847&#comment-22880847. If that's the case then it's slightly more worrying, the behavior should not have changed between 2.0.x and 2.1 or 2.2

Posted by juha at Dec 07, 2013 11:27

Thanks for reporting and trying the dev releases.

Posted by juha at Dec 07, 2013 11:28
Document generated by Confluence on Jun 05, 2016 09:34