У меня есть каталог растровых изображений, который будет постоянно обновляться. Из этих изображений я делаю пирамиды изображений, используя утилиту 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, но они также не имели этого.
Ответы:
Вы можете создать рабочую область, хранилище данных и слой (coveragestore) для GeoTiff с curl и xml из-за пределов пользовательского интерфейса следующим образом:
Создайте рабочее пространство.
Затем создайте хранилище данных.
Затем создайте слой.
Когда все это будет сделано, у вас есть хранилище данных, указывающее на внешнее изображение image_wgs84.tif и слой WMS для отображения покрытия.
Чего я не знаю, так это того, переходит ли эта техника непосредственно в технику создания хранилища данных типа пирамиды изображений или нет.
Удачи.
источник
?recalculate=nativebbox
пересчет собственной ограничительной рамки при изменении проекции или политики проецирования. См docs.geoserver.org/stable/en/user/rest/api/...Вам понадобится магазин покрытия и покрытий.
Хранилища данных, которые вы пытались использовать, предназначены только для векторных данных.
Вы проверяли, как использовать curl для загрузки Coverage через оставшуюся часть Geoserver?
источник