Ankündigung

Einklappen

Serverwartung 21.2.



Am 21.2. im Laufe des späten Abends wird eine Serverwartung durchgeführt. Das Forum ist dadurch für gut zwei Stunden nicht erreichbar.
Es wird eine Wartungsseite geschaltet.

Mehr anzeigen
Weniger anzeigen

String in DateTime umwandeln

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

    String in DateTime umwandeln

    Hallo zusammen,

    ich versuche gerade erfolglos ein Datum, das als String im Format yyyy-MM-dd über das Exec-Binding aus einem Shell-Script eingelesen wird über eine Rule in DateTime umzuwandeln, um das Datum weiterverarbeiten zu können.

    Orientiert habe ich mich dabei an diesem Beitrag https://knx-user-forum.de/439280-post2.html

    Mein Code sieht aktuell wie folgt aus:

    Items:
    Code:
    String Exec_strDate    "Datum als String [%s]" {exec="<[/opt/openhab/shellscripts/trash.sh yellow:60000:REGEX((.*?))]"}
    Rule:
    Code:
    rule "strDate to Date"
        when
            System started or
            Item Exec_str_Date received update
        then
            var DateTime temp
            temp = parse(Exec_strDate.state)
    end
    Funktioniert aber irgendwie nicht. Fehlermeldung lautet:
    Code:
    2015-01-10 23:46:31.684 [ERROR] [m.r.internal.engine.RuleEngine] - Error during the execution of startup rule 'strDate to Date': Could not invoke method: org.joda.time.DateTime.parse(java.lang.String) on instance: null
    Wenn ich dagegen einen String direkt in der Rule eingebe funktioniert es.
    Code:
    temp = parse("2015-01-11")
    Jemand eine Ahnung, wo der Fehler liegt? Ist das Problem die Rule oder kommt der String schon nicht richtig im Item an über das Exec-Binding?

    Wobei es beim update des Items keinen Fehler gibt
    Code:
    2015-01-10 23:45:59.004 [INFO ] [runtime.busevents             ] - Exec_strDate state updated to 2015-01-15
    Danke im Voraus für eure Ideen.

    Grüße
    Hannibal

    #2
    temp = parse(""+Exec_strDate.state)

    Kommentar


      #3
      Manchmal ist die Lösung so einfach
      Funktioniert bestens, danke für den Tip!

      Kommentar

      Lädt...
      X