作为一个简单的测试用例,我试图配置OpenGeo的软件堆栈,以便可以将GeoTIFF显示为OSM等法线贴图的覆盖图。因此,我执行以下步骤:
- 使用postGIS创建空间数据库
- 将GeoTIFF加载到数据库中
- 将数据库导入到GeoServer
- 在GeoServer中将其预览为地图叠加层(例如,使用GeoExplorer或OpenLayers)
与将GeoTIFF直接导入到Geoserver(这很困难)相反,从数据库导入的表在GeoServer Web应用程序中被标记为“矢量数据”,而不是“栅格数据”。在图层预览中,GeoExplorer不会显示来自GeoTIFF的任何内容,并且OpenLayers返回WMS文件,报告以下内容ServiceExeption
:
The requested Style can not be used with this layer.
The style specifies an attribute of geom and the layer is: opengeo:test
我相信解决方案非常简单,但是似乎我不明白GeoServer如何解释存储在postGIS中的栅格数据。
有人可以告诉我我想念的点吗?
我的详细步骤:
template_postgis
按照我在Ubuntu 12.04上进行操作时所记录的postGIS,以模板和端口5432为基础,创建空间数据库。使用
raster2pgsql
(http://suite.opengeo.org/docs/dataadmin/pgGettingStarted/raster2pgsql.html)中的命令行从命令行将GeoTIFF加载到数据库中。raster2pgsql -I -C -s 32632 test.tif public.testTable | psql -d test -h localhost -U opengeo
哪里
-I
:标记以创建用于性能的空间GiST索引-C
:标志以应用栅格约束-s 32632
:test.tif
工具报告的SRIDgdalinfo
test.tif
:正确测试GeoTIFFpublic.testTable
:目标架构中的新表-d test
:启用空间的数据库-U opengeo
:数据库所有者(标准用户名)
- 如官方研讨会所述,将数据库导入GeoServer