Utilisation des fichiers de fonctionnalités externes avec les services WMS
L'utilisation de fichiers de fonctionnalités externes vous donne un contrôle absolu sur le fichier de fonctionnalités du service WMS, ce qui vous permet de réaliser les opérations suivantes par exemple :
- Ajouter des métadonnées concernant le service
- Ajouter des métadonnées concernant chaque couche
- Ajouter des systèmes de référence spatiale depuis la liste des projections prédéfinies du serveur ArcGIS
- Personnaliser des informations de légende pour chaque couche
Bien que les fichiers de fonctionnalités externes vous donnent plus de souplesse, leur utilisation nécessite la connaissance de la spécification WMS de l'OGC.
Cette rubrique explique comment activer votre service WMS afin d'utiliser des fichiers de fonctionnalités externes et décrit certains cas d'utilisation mettant en avant l'avantage que vous pouvez retirer des fichiers de fonctionnalités externes.
Remarque : si vous recourez à des fichiers de fonctionnalités externes pour votre service WMS, vous êtes tenu de valider les fichiers de fonctionnalités conformément au schéma DTD ou XML défini par l'OGC. Vous devez également vérifier toutes les synchronisations entre vos fichiers de fonctionnalités et la carte à partir de laquelle le service WMS est publié.
Configuration d'un service WMS pour utiliser des fichiers de fonctionnalités externes
Pour configurer un service WMS et utiliser des fichiers de fonctionnalités externes, au moins un fichier de fonctionnalités WMS doit déjà être prêt. Vous pouvez créer le fichier à partir de zéro, mais il est souvent plus facile d'utiliser un fichier de fonctionnalités générées par le système comme modèle. (Par défaut, un ensemble de fichiers de fonctionnalités générées par le système est créé dans le répertoire en sortie d'ArcGIS Server chaque fois que le service est démarré. Ces fichiers sont supprimés lorsque le service est arrêté.)
Si vous souhaitez que votre service WMS prenne en charge différentes versions du protocole WMS (1.0.0, 1.1.0, 1.1.1 et 1.3.0, par exemple), vous devez disposer d'un fichier de fonctionnalités pour chaque version de WMS à prendre en charge. Dès que vous avez créé tous les fichiers de fonctionnalités nécessaires, nommez-les en leur attribuant un préfixe commun (fonctionnalités, par exemple), ainsi qu'un numéro de version unique à trois chiffres (fonctionnalités100, fonctionnalités110, fonctionnalités111, fonctionnalités130, par exemple). Placez tous vos fichiers de fonctionnalités dans un dossier accessible à partir d'une URL. Suivez ensuite les étapes ci-dessous pour que votre service utilise les fichiers :
Instructions du gestionnaire ArcGIS Server
- Cliquez sur l'onglet Services dans le gestionnaire.
- Recherchez votre service et cliquez sur l'icône Mettre à jour.
- Cliquez sur l'onglet Fonctionnalités.
- Recherchez WMS dans la liste Fonctionnalités. Vérifiez que la case est cochée et cliquez sur les lettres WMS (faites attention de ne pas décocher la case). Des propriétés apparaissent.
- Choisissez Utiliser les fichiers de fonctionnalités externes.
- Dans la zone Spécifiez l'emplacement et le préfixe, entrez l'URL du dossier où vous avez stocké vos fichiers de fonctionnalités, sans oublier le préfixe commun que vous avez utilisé pour ces derniers. Par exemple, si vous avez utilisé "fonctionnalités" comme préfixe commun, avez stocké vos fichiers sous C:\Inetpub\wwwroot\<nom de l'instance>\wms et si vous utilisez IIS avec ArcGIS Server pour .NET, vous pouvez saisir http://<nom du serveur>/<nom de l'instance>/wms/fonctionnalités.
- Cliquez sur Enregistrer.
Instructions ArcCatalog
- Créez une connexion administrateur au serveur SIG sur lequel votre service s'exécute.
- Recherchez votre service et arrêtez-le s'il est en cours d'exécution.
- Cliquez avec le bouton droit de la souris et choisissez Propriétés du service.
- Cliquez sur l'onglet Fonctionnalités.
- Recherchez WMS dans la liste Fonctionnalités. Vérifiez que la case est cochée et cliquez sur les lettres WMS (faites attention de ne pas décocher la case). Des propriétés apparaissent.
- Choisissez Utiliser les fichiers de fonctionnalités externes.
- Dans la zone Spécifiez l'emplacement et le préfixe, entrez l'URL du dossier où vous avez stocké vos fichiers de fonctionnalités, sans oublier le préfixe commun que vous avez utilisé pour ces derniers. Par exemple, si vous avez utilisé "fonctionnalités" comme préfixe commun, avez stocké vos fichiers sous C:\Inetpub\wwwroot\<nom de l'instance>\wms et si vous utilisez IIS avec ArcGIS Server pour .NET, vous pouvez saisir http://<nom du serveur>/<nom de l'instance>/wms/fonctionnalités.
- Cliquez sur OK et redémarrez le service.
Cas d'utilisation 1 : ajouter d'autres systèmes de référence spatiale (SRS/CRS)
Problème : les services WMS que vous créez avec ArcGIS Server prennent en charge des centaines de systèmes de référence spatiale, mais seulement deux sont annoncés dans le fichier de fonctionnalités : EPSG 4326 (requis par chaque service WMS) et la référence spatiale du bloc de données à partir duquel vous avez publié le service. Bien que vous puissiez demander une carte du service WMS à l'aide de n'importe lequel des systèmes de référence spatiale pris en charge, certains clients WMS renvoient une erreur si la référence spatiale que vous demandez n'apparaît pas dans le fichier de fonctionnalités. D'autres clients, comme ArcMap, vous autorisent uniquement à utiliser les systèmes de référence spatiale répertoriés dans le fichier de fonctionnalités.
Solution : la publication d'un service WMS avec des fichiers de fonctionnalités externes permet d'ajouter plus de systèmes de référence spatiale aux fonctions de ce service WMS afin qu'un client WMS en soit informé.
Procédure détaillée : pour obtenir un exemple détaillé, reportez-vous à la rubrique Adding spatial reference systems to a WMS service's capabilities file sur le blog d'ArcGIS Server.
Cas d'utilisation 2 : rediriger les demandes WMS en configurant les balises OnlineResource
Problème : les balises OnlineResource d'un fichier de fonctionnalités du service WMS indiquent aux clients où envoyer les demandes GetCapabilities, GetMap et GetFeatureInfo suivantes après la connexion initiale. En général, les balises OnlineResource contiennent la même URL que le service WMS, mais lorsqu'un proxy inversé est concerné ou lorsque l'utilisateur souhaite que différents types de demandes WMS soient envoyés à différents serveurs, il est nécessaire de rendre les balises OnlineResource configurables.
Solution : en publiant un service WMS avec des fichiers de fonctionnalités externes, les balises OnlineResource peuvent être configurées pour pointer vers des URL différentes pour différents types de demandes WMS.
Procédure détaillée :
- Suivez les étapes de la section Configuration d'un service WMS pour utiliser des fichiers de fonctionnalités externes de cette documentation pour publier un service WMS à l'aide de fichiers de fonctionnalités externes.
- Ouvrez le fichier de fonctionnalités externes pour la version 1.3.0 (par exemple, fonctionnalités130.xml) dans un éditeur de texte.
- Recherchez toutes les balises <OnlineResource>. Il doit y en avoir quatre. Une balise est destinée au service WMS et les trois autres sont destinées aux trois types de demandes WMS, qui sont GetCapabilities, GetMap et GetFeatureInfo.
- Définissez l'attribut xlink:href de la balise <OnlineResource> sur l'URL où vous souhaitez envoyer ce type de demande WMS. Enregistrez la modification. (L'attribut xlink:href peut être unique parmi les quatre balises <OnlineResource>.)
- Répétez les étapes 2 à 4 pour d'autres versions (1.0.0, 1.1.0, 1.1.1 et ainsi de suite) des fichiers de fonctionnalités externes.
- Accédez aux fichiers de fonctionnalités externes par l'intermédiaire des URL et vérifiez que les changements sont enregistrés correctement.
Il n'est pas nécessaire de redémarrer le service WMS ou son service de carte ou image parent à la fin de cette procédure. L'actualisation de la connexion à partir de votre client doit être suffisante.
Remarque : si la même URL, qui n'est pas l'URL du service WMS, est utilisée pour tous les types de demandes WMS, il n'est pas nécessaire d'utiliser des fichiers de fonctionnalités externes. En revanche, définissez la balise OnlineResource commune par le biais d'ArcCatalog ou du gestionnaire et publiez le service WMS avec les fichiers de fonctionnalités générés par le système.
Cas d'utilisation 3 : configurer et personnaliser les informations de couche dans les fichiers de fonctionnalités WMS
Problème : les fichiers de fonctionnalités WMS sont le seul lien entre un service WMS et un client WMS, dans lequel le serveur annonce les informations tandis que le client les utilise. La spécification WMS définit un grand nombre de propriétés (à travers les balises XML du fichier de fonctionnalités) pour décrire chaque couche du service, ainsi que le service lui-même, mais beaucoup de ces propriétés de couches ne peuvent pas être ajoutées ou configurées lorsque vous publiez un service WMS par l'intermédiaire d'ArcGIS Server avec des fichiers de fonctionnalités générés par le système.
Solution : en publiant un service WMS avec des fichiers de fonctionnalités externes, vous pouvez configurer et personnaliser n'importe quelle métadonnée pour chaque couche WMS dans le service.
Exemple : cet exemple montre comment ajouter des métadonnées pour une couche WMS au fichier de fonctionnalités du service WMS. Les métadonnées peuvent inclure un résumé, des mots-clés, un lien URL vers les métadonnées au format standard, une attribution et même le lien URL vers les données d'entités.