Ich versuche, eine einfache Webkarte basierend auf dem PostGIS / Geoserver / OpenLayers-Stapel unter Windows Server 2008 zu testen.
Wenn ich meine WMS-Ebene lade durch:
var gwctest = new OpenLayers.Layer.WMS(
"gwctest",
"http://localhost:1979/geoserver/wms",
{
'layers': 'Index2000:index_vect_s100',
'format': 'image/png',
'srs': 'EPSG:3857',
'units': 'm',
'transparent': true
},
{'opacity': 0.8, 'isBaseLayer': false, 'visibility': false}
);
Alles scheint in Ordnung zu sein.
Wenn ich jedoch versuche, meiner Karte mithilfe von GeoWebCache einen WMS-Layer hinzuzufügen, wird dieser ersetzt
"http://localhost:1979/geoserver/wms"
mit:
"http://localhost:1979/geoserver/gwc/service/wms"
Meine Daten bewegen sich plötzlich von der richtigen Position:
Irgendwelche Ideen, was die Ursache sein könnte?
BEARBEITEN: Einige zusätzliche Informationen zum Beitrag der GWC-Mailingliste .
Antworten:
Aktualisieren
In den Antworten auf Radeks Beitrag im GWC-Forum finden Sie die tatsächliche Ursache und Lösung. Ich verstehe jetzt, warum TileCache sich für die Anzeige von Fehlern wie "Aktueller x-Wert -1311047.936977 ist zu weit von der Kachelecke x -1493907.560000 entfernt" entschieden hat, anstatt die "nächsten" Kacheln innerhalb eines beliebigen Fehlerbereichs zurückzugeben.
Sind Ihre Originaldaten in EPSG 3857? Wenn nicht, dann ist es mit ziemlicher Sicherheit eine (nicht) irgendwo stattfindende Bezugsverschiebung.
Versuchen Sie, Ihre OpenLayers-Definition so zu ändern, dass sie auf EPSG: 900913 verweist. Vielleicht erkennt GeoWebCache den neuen Web-Mercator-Code nicht?
Über den Link, den Sie gepostet haben:
Das klingt so, als ob Geoserver und GeoWebCache unterschiedliche Projektionsdateien verwenden. Möglicherweise hat Ihr Geoserver einen to_wgs-Parameter und GWC nicht.
Führen Sie unter Windows Process Monitor - http://technet.microsoft.com/en-us/sysinternals/bb896645 aus , um festzustellen, auf welche Dateien Sie wirklich zugreifen.
Ich gehe auch davon aus, dass die Bilder nicht zwischengespeichert wurden, nachdem Sie einige Projektionsparameter geändert haben. Versuchen Sie erneut zu säen / löschen, um dies zu überprüfen.
quelle
Haben Sie den richtigen Kachelursprungssatz für Ihre OpenLayers.Map wie in GeoWebCache festgelegt? Überprüfen Sie, wie das TileOrigin in der GeoWebCache-Demo der Ebene festgelegt ist, und stellen Sie sicher, dass Ihr OpenLayers.Map-Konstruktor dasselbe TileOrigin enthält.
quelle
Eine solche Fehlausrichtung ist fast immer ein Projektionsproblem. Sind die Daten in EPSG: 3857 gespeichert? Überprüfen Sie, ob die GeoWebCache-Ebene für die Ausgabe in EPSG: 3857 konfiguriert ist.
quelle
Haben Sie versucht, den Cache zu leeren?
quelle