Ankündigung

Einklappen
Keine Ankündigung bisher.

exec funktioniert nicht

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    exec funktioniert nicht

    Ich bekomme die exec Befehle nicht zum laufen.

    Raspbian Revision B
    Raspbian 2013-07-27
    openhab 1.2.0
    java jdk1.8.0

    Habe openhab nun auf meinem Raspberry laufen und habe einen Schalter in meine Oberfläche hinzugefügt.

    Nun möchte ich wenn der betätigt wird, dass irgendein Kommando aufgerufen wird mit exec. (unten ist nur ein Beispiel)

    Jedoch bekomme ich immer die Meldung:


    Code:
    18:18:40.446 INFO  runtime.busevents[:42] - Radio_Switch received command ON
    18:18:40.687 ERROR o.o.c.s.ScriptExecutionThread[:70] - Error during the execution of rule 'Rule_1': org.eclipse.xtext.util.PolymorphicDispatcher$NoSuchMethodException: Couldn't find method ''_assignValue'' for objects [JvmVoid:  (eProxyURI: demo.rules#xtextLink_::0.2.2.2.0.0::0::/1), <null> exec <XStringLiteralImpl>, ON:/opt/jdk1.8.0/bin/java -version, org.eclipse.xtext.xbase.interpreter.impl.DefaultEvaluationContext@1b78200, org.eclipse.xtext.util.CancelIndicator$1@4becc6]
    Hier mein Code dazu:
    In der demo.items Datei
    Code:
    Group All
    Switch Radio_Switch "Radio" <radio> (All)
    in der demo.rules datei
    Code:
    rule "Rule_1"
    	when
    		Item Radio_Switch received command
    	then
                  exec="ON:/opt/jdk1.8.0/bin/java -version"		
    end
    in der demo.sitemap datei

    Code:
    sitemap demo label="Main Menu"
    {
    	Frame {
                          Switch item=Radio_Switch
    	          }
    }
    Das funktioniert soweit, nur das er den exec Befehl wohl nicht erkennt oder?
    Was mache ich falsch?

    #2
    Ohne das bisher selbst zu nutzen, denke ich, der korrekte Code sollte eher
    Code:
    rule "Rule_1"
    when
        Item Radio_Switch received command
    then
        if (receivedCommand=ON)
            executeCommandLine("/opt/jdk1.8.0/bin/java -version")
    end
    lauten.
    Die von Dir benutzte Schreibweise käme in der Items-Definition zur Anwendung.
    Wenn Du den openHAB Designer nutzt, müsste die Schreibweise innerhalb der rules eigentlich angemeckert werden.

    Kommentar


      #3
      Ach ja...

      die Rule bräuchtest Du garnicht, wenn Du das Item so definierst:
      Code:
      [URL="http://redaktion.knx-user-forum.de/lexikon/Switch/"]Switch[/URL] Radio_Switch "Radio" <radio> (All) {exec="ON:/opt/jdk1.8.0/bin/java -version"}

      Kommentar


        #4
        Danke für die Antwort.
        Wollt nur bescheid geben, dass ich das erst wieder Ende der Woche testen kann, und dann berichte.
        Bin mir aber relativ sicher, dass dieser exec Befehl in der *.item auch nicht ging. Da kam gar keine Reaktion oder Fehlermeldung.

        Hab auch gelesen, der "executeCommandLine" Befehl funktioniert erst ab Runtime 1.3.0, die seit kurzem verfügbar ist. Vielleicht klappts ja dann damit.

        to be continued...

        Kommentar


          #5
          Zitat von Falko81 Beitrag anzeigen
          Bin mir aber relativ sicher, dass dieser exec Befehl in der *.item auch nicht ging. Da kam gar keine Reaktion oder Fehlermeldung.

          Hab auch gelesen, der "executeCommandLine" Befehl funktioniert erst ab Runtime 1.3.0, die seit kurzem verfügbar ist. Vielleicht klappts ja dann damit.

          to be continued...
          Ja, stimmt, executeCommandLine ist erst vor kurzem dazu gekommen :-)
          Was aber das exec-Binding betrifft, sollte das funktionieren, sofern das exec-binding auch geladen ist.

          Kommentar


            #6
            gibt es hier Neuigkeiten? Alles Tutti?
            Visualisierung, Rule/Logic-Engine, Integrationsplattform mit openhab (Supportforum)

            Kommentar

            Lädt...
            X