#1 Fri 22 January 2016 08:54
- Sophie_Mollard
- Participant occasionnel
- Lieu: Besançon
- Date d'inscription: 24 Sep 2013
- Messages: 32
[Geoserver] Créer un nouveau style en utilisant l'API
Bonjour à tous,
je souhaiterais créer de nouveaux styles sur Geoserver en utilisant curl. J'ai donc effectué plusieurs essais à partir des exemples présents sur le web (notamment http://docs.geoserver.org/latest/en/use … /curl.html et http://sourceforge.net/p/geoserver/mail … /25127542/.
Il s'agit des deux commandes suivantes :
Code:
curl -v -u admin:geoserver -XPOST -H "Content-type: text/xml" -d "<style><name>nom_du_style</name><filename>fichier.sld</filename></style>" http://localhost:8080/geoserver/rest/styles
Code:
curl -v -u admin:geoserver -XPUT -H "Content-type: application/vnd.ogc.sld+xml" -d @fichier.sld http://localhost:8080/geoserver/rest/styles/nom_du_style
Si je travaille en local et que le fichier.sld est présent dans le répertoire des styles de Geoserver, je ne rencontre aucun problème. Toutefois, je ne saisis pas complètement l'utilité de la deuxième requête puisque la première suffit à faire fonctionner le nouveau style correctement sur l'interface web de Geoserver et de changer avec succès le style des couches.
Cependant, je n'arrive pas à savoir si cette méthode fonctionne si le Geoserver est situé sur un serveur distant et, dans le cas où c'est possible, comprendre comment faire.
En effet, dans ce cas, comment signaler l'accès au chemin du fichier.sld ? Si j'indique le chemin complet dans l'argument -d de la la première commande, celle-ci s'exécute correctement mais la seconde ne fonctionne pas (même en indiquant encore une fois le chemin complet de fichier.sld).
Je vous remercie d'avance pour la moindre piste que vous indiqueriez !
Sophie.
Hors ligne
#2 Mon 25 January 2016 11:02
- Sophie_Mollard
- Participant occasionnel
- Lieu: Besançon
- Date d'inscription: 24 Sep 2013
- Messages: 32
Re: [Geoserver] Créer un nouveau style en utilisant l'API
Problème résolu dès que l'on a l'esprit un petit peu plus clair !
Il faut bien exécuter ces deux commandes en précisant le chemin d'accès au fichier local que dans la deuxième commande. On obtient donc :
Code:
curl -v -u admin:geoserver -XPOST -H "Content-type: text/xml" -d "<style><name>style2</name><filename>style2.sld</filename></style>" https://georchestra-dev.umrthema.univ-fcomte.fr/geoserver/rest/styles
pour créer le style (sans attributs). Le style apparait bien dans l'interface web de Geoserver et le fichier associé style2.xml est bien créé dans le répertoire des styles de Geoserver.
Code:
curl -v -u admin:geoserver -XPUT -H "Content-type: application/vnd.ogc.sld+xml" -d @/home/smollard/ownCloud/style2.sld https://georchestra-dev.umrthema.univ-fcomte.fr/geoserver/rest/styles/style2
pour charger les attributs du style à partir du fichier.sld du répertoire local. Les attributs du style sont chargés dans l'interface web de Geoserver et le fichier style2.sld est créé dans le répertoire des styles de Geoserver.
Hors ligne