Announcement

Collapse
No announcement yet.

Verzeichnis Eventlistener

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Verzeichnis Eventlistener

    Hi,
    ich habe eine lokale Javascript Browseranwendung, die in einer Endlosschleife XML-Files aus einem Verzeichnis einließt.
    Jetzt habe ich mir die Frage gestellt ob es in irgendeiner Art und Weise möglich ist jedesmal einen Event zu werfen wenn ein neues File im Verzeichnis ist, damit ich diese Schleife nicht brauche.
    Hat da jemand ne Idee?

  • #2
    Wie kann Javascript auf das Dateisystem zugreifen?
    Christian

    Comment


    • #3
      bis jetzt mache ich das mit einem XMLHttpRequest

      Comment


      • #4
        Wo sollte es so einen Listener geben?

        XMLHttpRequest geht also zum Server und dieser sucht die Dateien zusammen (auf dem Server und nicht auf dem Client!!!). Wie sucht der Server die Dateien?? Dann sendet er sie zurück.

        Wo könnte da jetzt ein Listener auf der Clientseite auf was lauschen? Würde der Server feststellen können (könnte er mittels eines Java-Programmes auf der Serverseite), an wenn sollte der Server die Info senden? HTTP ist zustandslos.
        Zuletzt editiert von Christian Marquardt; 20.12.2011, 17:18.
        Christian

        Comment


        • #5
          Also erstmal dazu, meine anwendung läuft ohne server.
          Ich hab mir noch keine gedanken über den genauen ablauf gemacht oder in welcher sprache das ganze läuft, ich wollte nur n paar ideen sammeln, wie man das lösen könnte. Einzige Bedingung ist, das eine Anbindung an Javascript möglich sein muss.

          Comment


          • #6
            Also erstmal dazu, meine anwendung läuft ohne server.
            Dann ist eine Webanwendung ist falsche Wahl, eine Webanwendung benötigt einen Server!

            Javascript kann nicht auf das Dateisystem zugreifen.

            Suche dir eine andere Programmiersprache zur Realisierung
            Christian

            Comment


            • #7
              Hallo,
              Originally posted by thho View Post
              bis jetzt mache ich das mit einem XMLHttpRequest
              Originally posted by thho View Post
              Also erstmal dazu, meine anwendung läuft ohne server.
              Und wohin schickst du dann den XMLHttpRequest?
              Vlt. solltest du dich erstmal mit den Grundlagen und den korrekten Termini vertraut machen, um hier nicht am laufenden Band Missverständnisse zu produzieren!

              Gruß Falk
              Wenn du denkst du hast alle Bugs gefunden, dann ist das ein Bug in deiner Denksoftware.

              Quellcode ohne ein Mindestmaß an Formatierung sehe ich mir nicht an! Ich leiste keinen Privatsupport per Mail oder PN!

              Comment


              • #8
                ich hab geschrieben "browserapplikation", ich nutze den browser nur zur darstellung, die anwendung muss doch deswegen nicht auf einem server laufen? verstehe euer problem nicht...
                es hat seine gründe warum ich das mit javascript mache, das möchte ich jetzt nicht weiter erläutern.
                es geht nur um den event, der ja eigentlich mit meiner applikation erstmal nichts zu tun hat.

                zur info so siehts aus:

                function loadXMLDoc(dname)
                {
                if (window.XMLHttpRequest)
                {
                xhttp=new XMLHttpRequest();
                }
                else
                {
                xhttp=new ActiveXObject("Microsoft.XMLHTTP");
                }
                xhttp.open("GET",dname,false);
                xhttp.send();
                return xhttp.responseXML;
                }

                loadXMLDoc("test.xml"); //liegt im root verzeichnis der applikation

                Comment


                • #9
                  ich hab geschrieben "browserapplikation", ich nutze den browser nur zur darstellung, die anwendung muss doch deswegen nicht auf einem server laufen? verstehe euer problem nicht...
                  Denke, das Problem dürfte eher auf deiner Seite liegen:

                  Eine Browser- oder Webapplikation benötigt - sofern nun nicht gerade nur statische Seiten aus dem Filesystem dargestellt werden - einen Server. Du willst dynamik bzw. weitergehende Verarbeitung

                  Und um deine Frage NOCHMALS zu beantworten:

                  Nein, einen solchen Listener gibt es nicht, da Javascript nicht auf das Dateisystem zugreifen kann.


                  Und du hast im obigen Code KEINEN Event, sondern setzt einen AJAX-Request ab, der dir als Ergebnis eine XML-Datei liefert.
                  Du wirst mittels deiner Technik
                  - nicht feststellen können, ob weitere Dateien hinzugekommen sind
                  - sich bestehende Dateien geändert haben.

                  Deine Anwendung ist falsch konzipiert. Du benötigst um deine Anforderungen zu realisieren, einen Webserver sowie eine serverseitige Sprache, die eben genau deinen AJAX-Request entgegen nimmt und deine gewünschten Dateioperationen ausführt. Serverweitig kann dann eben das Dateisystem durchsucht werden oder nach Veränderungen geschaut werden
                  Christian

                  Comment


                  • #10
                    ja, das ist mir alles bewusst mit dem request und dass ich nicht aufs filesystem zugreifen kann.
                    Da das ganze eine Kartenanwendung mit OpenLayers ist, kann ich aber auf das Javascript nicht verzichten. Ich weiß auch, dass das ganze mit einem kleinen Webserver einfacher zu realisieren wäre, allerdings verzichte ich bewusst darauf.
                    Das ganze soll vll. auch in eine Anwendung eingebunden werden, die einen eigenen Javascript Interpreter besitzt.
                    Ich hätte eher an sowas gedacht, wie z.b. dass man einen EventListener in Java implementiert und dann den JavaCode in Javascript einbettet... vielleicht bin ich hier auch völlig falsch...

                    Comment


                    • #11
                      und dann den JavaCode in Javascript einbettet... vielleicht bin ich hier auch völlig falsch...
                      Ja, das ist völlig falsch. Java läuft serverseitig und kann nicht in Javascript eingebettet werden

                      Ich hätte eher an sowas gedacht, wie z.b. dass man einen EventListener in Java implementiert
                      Ja, mit einem Server wie Tomcat, JBoss, Glassfish. Allerdings bleibt das o.a. Problem bestehen, dass der Server den Client nicht informieren kann.

                      Du hast eine falsche Anwendungarchitektur für dein Problem gewählt. Des Weiteren schau dir mal an wie HTTP funktioniert und was ein Client und was ein Server in diesem Context sind und wer was kann
                      Zuletzt editiert von Christian Marquardt; 22.12.2011, 15:25.
                      Christian

                      Comment

                      Working...
                      X