编程Geoserver 2.0.2在没有UI的情况下添加新的数据存储和层

时间:2011-02-23 17:03:15

标签: datastore layer geoserver geotools

我有一个不断更新的图像目录。从这个图像,我使用Geotool的PyramidBuilder实用程序制作图像金字塔。我需要设置一个cron作业,以便在不使用UI的情况下自动向Geoserver添加新的数据存储和图层。

在查看Geoserver手册的REST部分之后,我能够添加我的工作区“testWS”,但尝试创建一个ImagePyramid数据存储区不起作用。

由于我可以访问数据存储区,因此我扩展了shapefile示例并尝试

curl -u admin:geoserver -XPUT -H 'Content-type: text/plain' \ 
   -d '/opt/geoserver_data_dir/2.0.2/data/test_pyramid.pyr' \
    "http://localhost:8080/geoserver/rest/workspaces/testWS/datastores/test_pyramid.pyr external.imagepyramid?configure=all"

test_pyramid.pyr在此位置是我的ImagePyramid的基础。

这给了我一个错误“没有这样的数据存储:test_pyramid”

有没有更好的方法将新数据存储区和图层添加到Geoserver而无需通过UI手动添加每个数据存储区和图层?我需要帮助来制作适当的REST语句,该语句将一个提升的ImagePyramid添加为数据存储区和层。

是否有一些Java代码可以做到这一点?我查看了Geoserver python扩展,但他们也没有。

1 个答案:

答案 0 :(得分:2)

您需要探索RESTConfig模块。它包含在GeoServer 2.1中,但是是2.0中的单独插件。有关详细信息,请参阅http://docs.geoserver.org/2.0.0/user/extensions/rest/index.html