Jako prosty przypadek testowy próbuję skonfigurować stos oprogramowania OpenGeo w taki sposób, aby wyświetlać GeoTIFF jako nakładkę na normalną mapę, taką jak OSM. Wykonuję więc następujące kroki:
- Utwórz bazę danych przestrzennych za pomocą postGIS
- Załaduj GeoTIFF do bazy danych
- Zaimportuj bazę danych do GeoServer
- Wyświetl podgląd jako nakładkę mapy w GeoServer (np. W GeoExplorer lub OpenLayers)
W przeciwieństwie do bezpośredniego importu GeoTIFF do Geoserver (który działa znakomicie), tabela importowana z bazy danych jest oznaczona jako „dane wektorowe”, a nie „dane rastrowe” w aplikacji internetowej GeoServer. W podglądzie warstwy GeoExplorer nie wyświetla niczego z GeoTIFF, a OpenLayers zwraca plik WMS raportujący ServiceExeption
:
The requested Style can not be used with this layer.
The style specifies an attribute of geom and the layer is: opengeo:test
Uważam, że rozwiązanie jest dość proste, ale wydaje się, że nie rozumiem, w jaki sposób GeoServer interpretuje dane rastrowe przechowywane w postGIS.
Czy ktoś może mi powiedzieć, o co mi chodzi?
Moje szczegółowe kroki:
- Utwórz przestrzenną bazę danych z postGIS zgodnie z dokumentacją, biorąc
template_postgis
jako szablon i port 5432, gdy działam na Ubuntu 12.04. Załaduj GeoTIFF do bazy danych z wiersza poleceń, używając
raster2pgsql
jak w ( http://suite.opengeo.org/docs/dataadmin/pgGettingStarted/raster2pgsql.html )raster2pgsql -I -C -s 32632 test.tif public.testTable | psql -d test -h localhost -U opengeo
gdzie
-I
: flaga, aby utworzyć przestrzenny indeks GiST dla wydajności-C
: flaga, aby zastosować ograniczenia rastrowe-s 32632
: SRIDtest.tif
zgłoszony przez narzędziegdalinfo
test.tif
: właściwy test GeoTIFFpublic.testTable
: nowa tabela w schemacie docelowym-d test
: baza danych włączona przestrzennie-U opengeo
: właściciel bazy danych (standardowa nazwa użytkownika)
- Zaimportuj bazę danych do GeoServer zgodnie z opisem w oficjalnym warsztacie
źródło