Suite de l’article Le plugin Geoserver Explorer pour QGis(1):installation et configuration, nous verrons ici les limitations du plugin.
Limitations du plugin
Voici une liste des limitations et problèmes connus pouvant apparaître.
Limitations liées au SRC. GeoServer peut rencontrer des problèmes lorsqu’un système SRC personnalisé est utilisé dans QGIS. La définition de SRC qui fonctionne correctement lors du rendu de la couche dans QGIS peut ne pas fonctionner lors de l’importation de la couche dans GeoServer. Habituellement, cela se traduit par une couche qui est publiée mais qui n’a pas de jeu SRC et n’est pas activée. Vous pouvez corriger cela manuellement en sélectionnant la couche dans l’arborescence de l’Explorateur et en modifiant son SRC.
Notez que les couches sont importées en utilisant le SRC défini dans la source de données d’origine (c’est-à-dire, le fichier prj si vous utilisez un fichier de formes). Définir un SRC différent à l’aide de l’option Set Layer CRS dans la table des matières QGIS n’aura aucun effet lors de l’importation de la couche dans GeoServer, sauf si vous enregistrez la couche avec ce SRC et donc, que la définition SRC est stockée avec les données de couche.
Limitations liées aux Noms de couches . GeoServer Explorer utilise l’API REST de GeoServer pour obtenir la liste des couches dans le catalogue. L’API REST décrit les couches sans espace de travail, ce qui signifie que si vous avez deux couches avec le même nom et dans différents espaces de travail (par exemple, ws1: macouche et ws2: macouche), elles seront affichées comme une seule (macouche dans ce cas) .
Lorsque cela se produit, la situation est ambiguë et GeoServer Explorer ne peut pas différencier les couches portant le même nom mais appartenant à des espaces de travail différents. La couche, telle que décrite par l’API REST, est ajoutée à l’arborescence de l’explorateur, mais elle ne représente que l’une des plusieurs couches partageant le même nom. Pour l’indiquer, la couche est affichée avec une icône d’avertissement et un message d’avertissement s’affiche dans la description de la couche.
Limitations de style
Une autre limitation importante est due aux différentes versions de la norme SLD supportées par QGIS et GeoServer.
L’explorateur GeoServer permet d’éditer le style d’une couche GeoServer directement à partir de l’interface QGIS. Il peut convertir un style défini dans QGIS en un style à télécharger dans un catalogue GeoServer et utiliser des styles GeoServer pour les couches QGIS. Cette conversion bidirectionnelle est cependant limitée. Ceci est principalement dû aux différentes versions de la norme SLD supportées par QGIS et GeoServer, ainsi qu’à certaines limitations de GeoServer et de QGIS. Le SLD est utilisé comme format commun par GeoServer Explorer pour décrire les styles dans les couches QGIS et GeoServer, mais certaines incompatibilités existent. Pour augmenter la compatibilité entre eux, des routines spécifiques ont été ajoutées à l’explorateur GeoServer. Cependant, dans certains cas, un style défini dans QGIS peut ne pas être compatible avec les éléments supportés par GeoServer, et la publication d’une couche sera fait avec un style modifié, ou même en utilisant un style par défaut si cela n’est pas possible.
Ce problème existe même lors de l’utilisation de la version la plus récente de GeoServer, mais les anciennes versions de GeoServer peuvent présenter plus d’incompatibilités et ne pas valider une grande partie du SLD produit par l’explorateur GeoServer.
En règle générale, le style de base pour les couches vectorielles devrait fonctionner sans problème dans les deux sens, mais une symbologie plus complexe pourra être partiellement ou complètement incompatible, conduisant à des différences entre, par exemple, le style que vous définissez dans QGIS et le style que la couche GeoServer aura. Les couches raster ont un support plus limité.
A titre d’anecdote, il m’est arrivé de définir un style dans le projet QGis et le charger dans Geoserver avec le plugin. Le style était bien servi par Geoserver, et on pouvait le constater avec l’option Prévisualiser les couches. Mais quand on essayait de recharger la couche dans QGis, le style n’était pas pris en charge par QGis…
Voici une liste des limitations connues dans la gestion SLD:
Couches raster
Le style raster est pris en charge uniquement de QGIS vers GeoServer. Cela signifie qu’un style raster peut être créé en utilisant l’interface utilisateur QGIS et téléchargé vers GeoServer, mais un style raster à partir de GeoServer ne peut pas être utilisé pour une couche QGIS. Lorsqu’une couche GeoServer est ajoutée au projet QGIS en cours à l’aide de GeoServer Explorer, elle utilisera sa symbologie uniquement s’il s’agit d’une couche vectorielle, mais sera ignorée dans le cas d’une couche raster et le style QGIS par défaut sera utilisé.
Seuls les rendus pseudo-couleur Single Band Gray et Singleband sont pris en charge. Dans ce dernier cas, l’interpolation de couleur exacte n’est pas prise en charge, mais les modes Linéaire et Discret sont pris en charge.
L’utilisation du plugin est une alternative très intéressante para rapport au processus classique de chargement d’un style dans Geoserver.
Couches vectorielles
Lors de la conversion d’un style GeoServer vers un style QGIS, le style est toujours défini en tant que style basé sur des règles. Cela signifie que, même si le style est créé à l’aide d’un autre type, tel que Gradué, quand il est téléchargé dans un catalogue GeoServer puis modifié de nouveau à partir de QGIS, il n’apparaîtra pas comme un style Gradué. Cela est dû à la manière dont QGIS gère les styles SLD, en les interprétant toujours comme une symbologie de type Rule-based.
L’étiquetage de base est pris en charge, mais tous les libellés (les étiquettes) ne seront pas exportés de QGIS vers SLD et téléchargés sur GeoServer. En particulier, l’étiquetage avancé dépendant des données n’est pas pris en charge.
L’importation d’une couche de points avec un style SVG de QGIS vers Geoserver génère une couche WMS qui respecte ce symbole SVG. La même chose n’est pas supportée pour le moment si la couche est réimportée en tant que couche WFS.
Dans le prochain article nous verrons comment utiliser le plugin Geoserver Explorer.