Fehlermeldungen und Lösungsvorschläge

Points of LinearRing do not form a closed linestring

IllegalArgumentException: Points of LinearRing do not form a closed linestring

Diese Fehlermeldung kann während dem Arbeiten mit Linien oder Polygon Datensätzen auftauchen. Die Meldung bedeutet kein Fehler im Programm, sondern eine Inkonsistenz in einem bestimmten Datensatz. 

Unsere Erfahrungen zeigen, dass diese Fehlermeldung besonders bei OpenStreetMap Daten im Shape-Format auftritt. Ein etwas aufwendiger aber einfacher Lösungs weg ist:

  1. Im Geopublisher das betroffene Shapefile im Datenpool auswählen. Rechte Maustaste, ->Bearbeiten, ->Internen Ordner öffnen.
  2. Die shp darin mit qgis öffnen. Wenn noch nicht geschehen, mit Fetch-Python-Plugins und dem Plugin-Manager die fTools aktivieren.
  3. Das Werkzeug Tools ->Geometry Tools -> Check Geometry Validity über das betroffene Shapefile laufen lassen. Es wird eine liste mit Problemen ausgegeben.
  4. Die Liste in einen Texteditor (z.B. notepad ++ oder gedit) kopieren und auf eine Liste aller FIDs reduzieren. Diese Features sind defekt und sollen in den nächsten Schritten entfernt werden.
  5. Die Attributtabelle öffnen, Edit-mode aktivieren und zur letzten kaputten FID scrollen. (Es ist wichtig die Liste von hinten abzuarbeiten da sich sonst die Reihenfolge der IDs verändert). Die Zeile(n) markieren und dann in Quantum-GIS Hauptfenster auf die Schere klicken. Diesen Arbeitsschritt für alle kaputten FIDs wiederholen.
  6. Den Edit-mode beenden und bestätigen, dass man die Änderungen speichern will. Quantum-GIS schliessen und im noch offnen Geopublisher-Fenster das Verzeichnis neu einlesen lassen.

Wenn Sie nun eine Karte öffnen, welche dieses Shapefile verwendet, sollten die Fehler nicht mehr existieren. Natürlich wurden Geometrien entfernt, und das Layer somit nicht wirklich repariert.

Java heap space

java.lang.OutOfMemoryError: Java heap space

Ein Datensatz war größer als der für Java verfügbare Arbeitsspeicher. Standardwerte sind:

  • Für Geopublisher: maximal 320 Mb
  • Für AtlasStyler (ohne GP gestartet): maximal 160 Mb
  • Für exportierte Atlanten: maximal 256 Mb.

Vorschlag 1: Wenn die Fehlermeldung nach anderen Fehlermeldungen auftritt, ist es vermutlich durch den vorhergehenden Fehler bedingt. Starten Sie dann Geopublisher neu und probieren Sie es nochmals.

Vorschlag 2: Wenn Sie den maximalen Speicher erhöhen wollen, der Geopublisher oder AtlasStyler zugewiesen ist, müssen Sie die Anwendung als ZIP herunterladen. Im entpackten Ordner bearbeiten Sie dann die start_[Geopublisher|AtlasStyler].bat (Windows) oder start_[Geopublisher|AtlasStyler].sh (Linux) und verändern Sie -Xmx160m z.B. zu -Xmx400m um 400 anstelle von 160Mb zuzuweisen.

Vorschlag 3: Wenn Sie den Speicher erhöhen wollen, der exportierten Atlanten maximal zugewiesen werden darf, so schließen Sie Geopublisher und öffnen Sie die Datei ...\.Geopublisher\geopublisher.properties und fügen Sie folgenden Zeile ein oder ändern Sie sie, falls schon ein Eintrag existiert:

startJVMWithXmx=400

Mit dieser Zeile wird allen exportieren Atlanten bis zu 400Mb Arbeitsspeicher zugewiesen bevor es zu einem OutOfMemoryError kommt.

 

 

Latest news from Twitter: