Closed ghost closed 8 years ago
@ahocevar wir haben nun mit der eigentlichen Entwicklung der Applikation begonnen. Leider sind uns schon ein paar Probleme untergekommen:
Danke und liebe Grüße, g01
Das .shp-File für die Bezirksgrenzen Wiens haben wir nicht in die SpatiaLite Datenbank (über SpatiaLite GUI) importieren können, weil wir die SRID nicht wissen und beim hineinladen ein Fehler (load shp error: Invalid character sequence)
Die SRID findet man entweder direkt in der dem Shapefile beiliegenden .prj Datei, oder durch Hochladen der .prj Datei auf http://prj2epsg.org. Wichtig ist auch, dass das Encoding stimmt (sollte UTF-8 sein).
Die Daten für die Citybike Stationen sind in Geoserver scheinbar nicht als Punktdaten reingeladen, sondern als seltsamer Typ (siehe Bild)
Habt ihr das auch vom Shapefile importiert? Da ist wohl etwas gröber schiefgelaufen. Dokumentiert einmal die Schritte, die ihr versucht habt, um diese Punkte in die Datenbank bzw. in GeoServer zu bekommen.
Generell fehlt uns etwas die Vorgehensweise, könnten sie vielleicht noch das Beispiel aus der letzten Einheit hochladen?
Ist verfügbar unter http://student.ifip.tuwien.ac.at/geoweb/2015/ifip/block6/, und als solches auch über SFTP am Studentenwebspace.
Bei den Citybike-Stationen haben wir das CSV-File in SpatiaLite geladen (Files / Advanced / Load CSV/TXT). Danach eben die Datenbank auf den Studentenwebspace geladen und in Geoserver einen neuen Datenspeicher angelegt (heißt mobilitaetsstandortanalyse). Dann eben den Layer der Citybike-Daten publiziert und das erwähnte Ergebnis bekommen. Ist das Problem wahrscheinlich, dass wir garkein Shapefile geladen haben, sondern nur das CSV-File?
Richtig, das ist das Problem. Im CSV ist keine (geeignete) Geometrie für SpatiaLite/GeoServer.
SRID sollte also 4326 sein, wenn wir ein Shape (egal ob Bezirksgrenzen, Citybike-Stationen oder Carsharing-Stationen) kommt trotzdem folgender Fehler:
Wir haben die Shapes jetzt als "Virtual Shapefile" in SpatiaLite GUI geladen, das hat immerhin funktioniert. Passt das auch?
Virtual Shapefile ist nicht gut. Davon rate ich stark ab. Das bereitet im weiteren Verlauf Probleme.
Wie ich ja in der Vorlesung gesagt habe, sind Shapefiles bei uns meist UTF-8 oder ISO-8859-1. Ich habe gerade die Bezirksgrenzen probiert, und die sind ISO-8859-1. Die anderen werden dann wohl auch so sein.
Okay durch den Wechsel auf ISO-8859-1 hat das Reinladen jetzt funktioniert, es wir aber in GeoServer wieder dieses Symbol angezeigt und kein
oder
Klickt mal in der Layer-Konfiguration ganz unten auf "Reload feature type". Dann sollte es passen.
Eine Sache noch, die mir bei beiden Layern auffällt: es ist wichtig, dass die Geometrie-Spalte 'geom' heißt, und nicht wie bei euch 'Geometry'. Am besten beide Shapefiles noch einmal neu importieren. Dann genügt es auch wieder, im GeoServer bei der Layer-Konfiguration "Reload feature type" zu sagen.
Danke, hat super funktioniert, hängen aber leider gleich wieder:
Wenn wir in unserer .sqlite-Datei Änderungen vornehmen (z.B. Bevölkerungsdaten neu hineinladen), werden diese dann in GeoServer automatisch übernommen oder müssen wir alles neu hineinladen/publizieren?
Einfach die Datei ändern, wieder hochladen, und dann nur kurz im GeoServer in die Datenspeicher-Konfiguration und dort "Speichern" sagen. Damit wird alles neu eingelesen.
Passt!
Wir haben jetzt unser Bezirksgrenzen-Shape mit den Bevölkerungsdaten gejoined (etwa wie g04 hier https://github.com/tuwien-geoweb-2015/g04_ue/issues/6), wissen aber gerade garnicht mehr wie und was wir mit diesen DataDict.txt und DataSet.txt Dateien anfangen sollen, damit man die Auswahl im Dropdown-Menü auf der Homepage hat und die Daten entsprechend auch in der Karte angezeigt werden.
Unser derzeitiger Arbeitsstand ist übrigens auch online unter http://student.ifip.tuwien.ac.at/geoweb/2015/g01/project/ einsehbar! Nächster Schritt wäre dann wahrscheinlich, den angezeigten Punktdaten Symbolen zu geben.
wissen aber gerade garnicht mehr wie und was wir mit diesen DataDict.txt und DataSet.txt Dateien anfangen sollen, damit man die Auswahl im Dropdown-Menü auf der Homepage hat und die Daten entsprechend auch in der Karte angezeigt werden.
Die DataSet.txt
Datei werdet ihr gar nicht mehr brauchen, when ihr die Bevölkerungsdaten schon in der Datenbank habt. Die DataDict.txt
Datei solltet ihr aktualisieren, sodass sie eure Attributfeldnamen von den Bevölkerungsdaten und zu jedem Feld eine Beschreibung enthält.
Gibt es die Infos irgendwo "fertig" zum verwenden für diese DataDict.txt? Wir haben es gerade versucht "händisch" zu schreiben, dann siehts aber leider so aus:
Anzeige funktioniert schon!
Die Spaltenanordnung muss gleich sein wie im Original. Aber das habt ihr wahrscheinlich eh schon rausgefunden.
Ja wir haben den Teil in der .js Datei etwas umgeschrieben, damit die DataDict.txt richtig eingelesen wird... das geht wohl auch so!
Sehr fein!
Datenbeschaffung und Einbindung erfolgreich abgeschlossen. Ergebnis siehe GeoServer / Studenten-Webspace.
1) Beschaffung der OGD Daten (City Bike, Carsharing, U-Bahn, Straßenbahn, Bus, ...) 2) Einbinden der Daten in die SpatiaLite Datenbank 3) Publizieren über den Geoserver