Ankündigung

Einklappen
Keine Ankündigung bisher.

[0.12.0] Fehlermeldung: "Cannot read properties of null"

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

    [0.12.0] Fehlermeldung: "Cannot read properties of null"

    Hallo Chris/Tobi!

    Hab seit kurzem bei einer bestehenden Config ein Problem beim Editieren. Sobald ich den Texteditor aufrufe, kommt die Meldung im Anhang.
    Die Config wird aber noch immer ordnungsgemäß geladen und angezeigt!!

    Ich konnte das ganze nun auf ein einzelnes Leerzeichen eingrenzen: Und zwar beim pushbutton vor oder nach dem "=" bei upvalue und downvalue.
    Das war dem Editor bisher egal (glaub ich), ich wüsste nicht wie ich es dort hingebracht hätte, denn der Editor liefert sofort den Fehler und erzwingt einen Reload.
    Damit kann ich das nur über Download/Upload lösen, so arbeite ich aber sonst nicht.

    Hab es bei den meisten anderen Widgets getestet, dort ist es bei den Attributen egal, wenn ein Leerzeichen um das "=" auftaucht.

    Code:
    <pushbutton downvalue="1" upvalue= "0" >
                      
    </pushbutton>
    ​
    lg
    Robert
    Angehängte Dateien

    #2
    Ich kann den Fehler nicht reproduzieren, wenn ich folgende Config nehme:

    Code:
    <?xml version="1.0" encoding="UTF-8"?>
    <pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" lib_version="9" design="pure" xsi:noNamespaceSchemaLocation="../visu_config.xsd">
      <meta>
      </meta>
      <page name="Start">
        <pushbutton downValue="1" upValue= "0" >
          <address transform="DPT:1.001" mode="readwrite">0/0/0</address>
        </pushbutton>
      </page>
    </pages>
    Dann kann ich diese im Text-Editor und im XML-Editor öffnen ohne Fehler, ich kann sie benutzen ohne Fehler und ich kann sie validieren ohne Fehler.

    Kannst Du mir diese Config mal so erweitern, dass der Fehler bei Dir auftritt?

    Zitat von Robert_Mini Beitrag anzeigen
    Das war dem Editor bisher egal (glaub ich), ich wüsste nicht wie ich es dort hingebracht hätte, denn der Editor liefert sofort den Fehler und erzwingt einen Reload.
    Verstehe ich nicht. Welcher Editor liefert den Fehler, Text oder XML? Der Text-Editor sollte eigentlich immer funktionieren und für genau solche Fälle das mittel der Wahl sein um die Config zu reparieren.
    Oder kommt der Fehler, wenn man versuch die Config normal zu laden?
    Gruß
    Tobias

    Kommentar


      #3
      Ok die zweite Frage hat sich erübrigt, im Screenshot sieht man im Hintergrund ja den Text-Editor. Dann bleibt nur noch das Thema: Minimale Config mit der man das Problem reproduzieren kann über.
      Gruß
      Tobias

      Kommentar


        #4
        In welchem Browser+Version der Fehler auftritt könnte auch relevant sein. Ich habe es in Chrome 108 und Firefox 108 probiert und keine Fehler gesehen.
        Gruß
        Tobias

        Kommentar


          #5
          Hallo Tobias!

          Hab nun die Config auf ein Minimum reduziert.
          Den Fehler erkennt man auch schon, dass der pushbutton rot unterwellt ist, obwohl die Syntax korrekt ist.

          Zum Editor: der funktioniert auch immer. Nur kommt diese Fehlermeldung, die nur die Option "Neuladen" hat, direkt nach dem Öffnen.
          Damit wird dann die Seite neu geladen und ich komme zur Visu-Seite zurück. In den meisten Fällen kommt vorher auch noch ein Browser-Popup, dass Neuladen oder Abbrechen erlaubt, dann kommt man zum Editor zurück.

          Das ganze ist aber ein Sonderfall. Dennoch wäre für solche Fälle ein "Abbrechen" Button im CV Editor Menü hilfreich.

          Getestet in: Chrome - Version 108.0.5359.125 (Offizieller Build) (64-Bit).

          Danke und lg
          Robert

          Code:
          <pages xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" design="metal" lib_version="9" xsi:noNamespaceSchemaLocation="./visu_config.xsd">
          <meta>
          <files>
          <file type="css">resource/config/media/my-custom-style.css</file>
          </files>
          <statusbar>
          <status type="html"><img src="resource/icons/comet_64_ff8000.png" alt="CometVisu" /> by <a href="https://www.cometvisu.org/">CometVisu.org</a> - <a href="manager.php">Config-Manager</a> </status>
          </statusbar>
          </meta>
          <page name="Uebersicht" showtopnavigation="false" showfooter="true" shownavbar-top="true" shownavbar-left="true">
          <page name="Technik1" shownavbar-left="false" visible="true" shownavbar-top="true">
          <page name="Alle Fenster und Türen" shownavbar-top="true" shownavbar-left="true" visible="true">
          <layout colspan="3"/>
          <group name="Aussen">
          <pushbutton downvalue="1" upvalue="0" mapping="Start">
          <layout colspan="3"/>
          <label>
          <icon name="it_remote"/>
          Startbefehl
          </label>
          <address transform="DPT:1.001" mode="write">5/3/5</address>
          </pushbutton>
          </group>
          </page>
          </page>
          </page>
          </pages>​
          lg
          Robert

          Kommentar


            #6
            Zitat von Robert_Mini Beitrag anzeigen
            Den Fehler erkennt man auch schon, dass der pushbutton rot unterwellt ist, obwohl die Syntax korrekt ist.
            Und der Editor sagt sich auch, dass das keine korrekte Syntax ist, wenn Du den Mauszeiger auf die unterstrichene Linie bewegst kommt ein kleines Popup, in dem die Details zum Fehler stehen und da steht, dass die Attribute "downValue" und "upValue" heißen müssen also mit großem "V". Groß-Kleinschreibung ist in XML-Dokumenten nicht egal. Das führt allerdings nicht dazu, dass eine Fehlermeldung kommt, denn die kommt beim Laden nur, wenn der Browser die Config nicht als XML-Daten laden kann. Hat also erstmal gar nichts damit zu tun, dass dies eine CometVisu-Config ist und ggf. keine valide, sondern ein Fehler in der XML-Syntax, d.h. der Browser versucht das als XML zu parsen und dabei kommt es zu einem Fehler. Wenn das passiert geht nichts mehr, d.h. die gesamte Config kann nicht gelesen werden und darum gibt es da kein "Abbrechen", denn die Visu wäre leer.

            Wenn ich die Config exakt so wie oben kopiere, ist bei mir die letzte Zeile mit "</pages>" rot unterstrichen und die Fehlermeldung meldet irgendein ungültiges Zeichen am Ende. Da ist ein Zeichen, welches der Editor nicht anzeigen kann, deswegen sieht das vermeintlich korrekt aus. Am besten löscht Du einfach mal die letzte Zeile und tippst die neu ein.

            Der Status-Abschnitt ist übrigens auch nicht valide, immer wenn man HTML-Code in XML schreibt muss das in einen CDATA Abschnitt, also so:

            Code:
            <status type="html"><![CDATA[
            <img src="resource/icons/comet_64_ff8000.png" alt="CometVisu" /> by <a href="https://www.cometvisu.org/">CometVisu.org</a> - <a href="manager.php">Config-Manager</a>
            ]]>
            </status>​
            Danach ist nichts mehr rot unterstrichen.

            Zitat von Robert_Mini Beitrag anzeigen
            Zum Editor: der funktioniert auch immer. Nur kommt diese Fehlermeldung, die nur die Option "Neuladen" hat, direkt nach dem Öffnen.
            Damit wird dann die Seite neu geladen und ich komme zur Visu-Seite zurück. In den meisten Fällen kommt vorher auch noch ein Browser-Popup, dass Neuladen oder Abbrechen erlaubt, dann kommt man zum Editor zurück.
            Die kommt nur, wenn es ungespeicherte Änderungen gibt. Da kann man den Reload dann abbrechen und die Sachen noch speichern.


            Gruß
            Tobias

            Kommentar


              #7
              Hallo Tobias!
              Danke für die Info. War mir so leider nicht klar und hätte ich nie gefunden!

              lg
              Robert

              Kommentar

              Lädt...
              X