Программирование Geoserver 2.0.2 для добавления нового хранилища данных и слоя без пользовательского интерфейса - PullRequest
3 голосов
/ 23 февраля 2011

У меня есть каталог изображений, который будет постоянно обновляться. Из этого изображения я делаю Image Pyramids с помощью утилиты Geotool's PyramidBuilder. Мне нужно настроить задание cron для автоматического добавления новых хранилищ данных и слоев в Geoserver без использования пользовательского интерфейса.

После просмотра раздела REST руководства Geoserver я смог добавить свое рабочее пространство "testWS", но попытка создать хранилище данных ImagePyramid не сработала.

Поскольку у меня есть доступ к хранилищу данных, я расширил пример шейп-файла и попытался

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 без добавления каждого из них вручную через пользовательский интерфейс? Мне нужна помощь в создании правильного оператора REST, который добавит существующий ImagePyramid в качестве хранилища данных и слоя.

Есть ли какой-нибудь Java-код, который мог бы сделать это? Я посмотрел на расширения Python Geoserver, но они также не имели этого.

1 Ответ

2 голосов
/ 23 февраля 2011

Вам необходимо изучить модуль RESTConfig. Он включен в GeoServer 2.1, но является отдельным плагином для 2.0. Подробнее см. http://docs.geoserver.org/2.0.0/user/extensions/rest/index.html.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...