Tak więc wydaje się prosta rzecz, ale nie mogę sprawić, by działała! Próbuję dodać plik danych rastrowych (GeoTIFF) do geoservera za pomocą interfejsu API REST, używając curl na systemie Linux. REST API jest pracy, bo stworzył nowy obszar roboczy używając go:
curl -u admin:geoserver -v -XPOST -H 'Content-type: text/xml' \
-d '<workspace><name>restProba</name></workspace>' \
http://localhost:8080/geoserver/rest/workspaces
Jest poprawnie utworzony, jak pokazuje interfejs użytkownika Geoservera, ale kiedy próbuję dodać coveragestore do tego obszaru roboczego, wykonując
curl -u admin:geoserver -v -XPOST -H 'Content-type: text/xml' -d
'<coverageStore><name>int_dec</name><enabled>true</enabled>
<type>GeoTIFF</type> <url>$home/int_dec.tif</url></coverageStore>'
"http://localhost:8080/geoserver/rest/workspaces/restProba/coveragestores?configure=all"
mimo że jest poprawnie załadowany, przechodzi bezpośrednio do domyślnego obszaru roboczego, który nie jest tym, w którym chcę go mieć. Czy istnieje sposób zdefiniowania, w którym obszarze roboczym chcę go mieć? Pomyślałem, że to wystarczy, wspominając o tym w adresie URL, pod którym wskazuję identyfikator URI przestrzeni roboczej programuProba, ale wydaje się, że go pomija.
Dzięki za pomoc :-)
pd: nowicjusz z geoserver, próbowałem tego szukać, ale albo nie używam właściwych kryteriów wyszukiwania, jestem głupcem, albo po prostu jest zbyt proste, aby ktokolwiek zapytał, że jestem nawet głupszym, by o to zapytać: p
Aby dodać sklep GeoTIFF i warstwę o tej samej nazwie w jednym kroku, możesz wykonać:
Więcej szczegółów w „Przykładach konfiguracji REST: dodawanie istniejącego pliku kształtu” .
źródło