Didacticiel : Publication d'un service WFS
Ce didacticiel explique comment publier un service WFS sur ArcGIS Server à l'aide d'ArcMap. WFS est une spécification publiée par l'OGC (Open Geospatial Consortium, Inc.) qui permet de diffuser les entités géographiques sur Internet. Lorsqu'un service de carte ou un service de géodonnées est publié avec les fonctions WFS, les données sont accessibles par les clients WFS conformes à l'OGC, y compris l'Extension ArcGIS Data Interoperability pour Desktop dans ArcGIS for Desktop. Ces clients WFS peuvent également voir les modifications les plus récentes apportées aux données. Si vous ne connaissez pas les services WFS et souhaitez en savoir plus avant d'entreprendre ce didacticiel, reportez-vous à la rubrique Services WFS.
Avant de commencer ce didacticiel
Si vous venez d'installer ArcGIS Server, vous devez réaliser certaines étapes préparatoires avant de pouvoir vous connecter au serveur et publier des services.
- Pour plus d'informations sur la façon de configurer le site ArcGIS Server, consultez la rubrique Démarrage après l'installation du système d'aide.
- Pour savoir comment mettre à disposition du serveur les données référencées par la ressource GIS, consultez la rubrique Rendre vos données accessibles à ArcGIS Server.
Choix d'un service de géodonnées ou d'un service de carte
Avec les services WFS, vous avez la possibilité de publier un service de géodonnées ou un service de carte. Vous devez prendre en compte certaines différences lorsque vous sélectionnez le type de service vous allez créer. Les sections suivantes récapitulent les fonctionnalités disponibles avec les services de géodonnées et les services de carte pour vous aider à identifier le type de service qui répond le mieux à vos besoins.
Services de carte
Un service de carte WFS représente une carte que vous avez mise à la disposition d'autres personnes par le biais d'Internet ou de tout client WFS conforme à l'OGC. Les services de carte avec la fonctionnalité WFS vous permettent de contrôler étroitement les données publiées par l'intermédiaire du service. Voici quelques raisons courantes pour la configuration d'un service de carte :
- Contrairement à un service de géodonnées, un service de carte seul peut comprendre des données de diverses sources, y compris des données de plusieurs géodatabases (fichier et ArcSDE), ainsi que des fichiers de formes.
- Vous pouvez sélectionner les classes d'entités à afficher par le biais d'un service de carte.
- Vous pouvez renommer les classes d'entités dans la carte afin que le service n'affiche pas les noms réels dans la source de données.
Les services de carte WFS connaissent également certaines limites. Prenez en compte les points suivants lors de la publication d'un service WFS à partir d'une carte :
- La carte est simplement une spécification des couches qui seront disponibles dans votre service WFS. La symbologie, les définitions de requête et les alias de champ définis au niveau de la couche ne sont pas transférés vers le service WFS, car l'objectif du service est d'afficher les entités dans les données. Pour afficher les propriétés visuelles de votre carte par l'intermédiaire des spécifications OGC, utilisez un service WMS.
- Deux couches ou plus dans la carte ne peuvent pas référencer la même classe d'entités.
- Deux couches ou plus dans la carte ne peuvent pas avoir le même nom.
- Comme WFS ne fonctionne qu'avec des entités, les couches raster de la carte sont exclues du service.
- Les tables non spatiales ne sont pas affichées.
- Si vous souhaitez que le service WFS prenne en charge des transactions pour la mise à jour (WFS-T), les données source de toutes les couches de la carte doivent provenir du même espace de travail, par exemple, la même géodatabase ArcSDE.
Services de géodonnées
Un service de géodonnées WFS vous permet d'accéder à une géodatabase ArcSDE ou fichier via Internet ou tout client WFS conforme à l'OGC. Lors de la création d'un service WFS à partir d'un service de géodonnées, il est important de ne pas oublier que toutes les classes d'entités de la géodatabase seront affichées dans le service.
Les services de géodonnées sont utiles dans les cas où vous devez accéder à des géodatabases distantes. Par exemple, une entreprise peut configurer des géodatabases ArcSDE pour gérer les données ses bureaux de Los Angeles et New York. Une fois les géodatabases ArcSDE créées, chaque bureau peut les publier sur Internet à l'aide d'un service de géodonnées.
Publication d'un service WFS sur ArcGIS Server
Pour commencer à publier un service WFS, suivez ces étapes.
- Suivez les instructions dans le tableau ci-dessous en fonction du type de service que vous publiez sur le serveur :
Option
Description
Pour publier un service de carte WFS...
...ouvrez la carte dans ArcMap et sélectionnez Fichier > Partager en tant que > Service > Publier le service. Cliquez sur Suivant.
Pour publier un service de géodonnées WFS...
...accédez à la géodatabase ArcSDE ou fichier dans ArcCatalog ou dans la fenêtre Catalogue, cliquez avec le bouton droit de la souris sur la géodatabase et sélectionnez Partager en tant que service de géodonnées.
- Dans la fenêtre Partager en tant que service, sélectionnez Publier un service. Cliquez sur Suivant.
- Dans la boîte de dialogue Publier un service, cliquez sur Connecter à ArcGIS Server pour créer une connexion au serveur.
- Dans la fenêtre Ajouter un serveur ArcGIS, sélectionnez Publier les services SIG. Cliquez sur Suivant.
- Pour l'URL du serveur, saisissez l'URL du site ArcGIS Server auquel vous souhaitez vous connecter. Par exemple : http://myserver:6080/arcgis
- Dans la liste déroulante Type de serveur, sélectionnez ArcGIS Server.
- Au cours du processus de publication, un fichier de définition de service est créé et stocké temporairement sur un disque local. A l'issue du processus, la définition de service est chargée sur le serveur et le fichier local est supprimé. Dans le cadre de ce didacticiel, acceptez le dossier par défaut et poursuivez.
- Si votre administrateur de serveur a activé la sécurité de votre site, entrez vos Nom d'utilisateur et Mot de passe. Cliquez sur Terminer.
- Facultativement, dans la fenêtre Publier un service, entrez un nouveau nom pour le service. Le nom ne doit pas dépasser 120 caractères et ne peut contenir que des caractères alphanumériques et des traits de soulignement. Cliquez sur Suivant.
- Par défaut, les services sont publiés sur le dossier racine (racine) d'ArcGIS Server. Les services peuvent être organisés dans des sous-dossiers du dossier racine. Choisissez le dossier où vous souhaitez publier le service, ou créez un dossier pour contenir le service. Cliquez sur Continuer.
- L'Editeur de services s'affiche. Dans l'Editeur de services, sélectionnez les opérations que les utilisateurs peuvent effectuer sur le service WFS. Vous pouvez contrôler en détails la manière dont le serveur exposera votre service. Cliquez sur l'onglet Fonctionnalités.
- Par défaut, Cartographie et KML sont activés. Sélectionnez WFS.
- Dans le volet gauche de l'Editeur de services, cliquez sur WFS. Ce volet vous permet de sélectionner la configuration des propriétés de votre service WFS. En définissant les propriétés du service WFS, les clients comprennent mieux le publicateur de service.
- Le champ URL présente l'URL utilisée par les clients pour accéder au service WFS. Cette URL utilise le format http://<nom du serveur>:6080/arcgis/services/<nom du dossier (le cas échéant)>/<nom du service>/MapServer/WFSServer.Remarque :
Copiez et enregistrez l'URL du service WFS. Vous en aurez besoin à d'autres étapes de ce didacticiel.
- Pour publier un service WMS avec les fichiers de fonctionnalités générés par le système, utilisez l'option par défaut Saisir les propriétés du service ci-dessous. Les champs Nom, Titre et Ressources en ligne sont renseignés automatiquement et ne doivent pas être modifiés. Facultativement, vous pouvez renseigner d'autres propriétés à l'aide des champs de la liste. Pour plus d'informations, reportez-vous à la rubrique Propriétés du service WFS disponible.
- Pour configurer un service WFS et utiliser des fichiers de fonctionnalités externes, sélectionnez Utiliser les fichiers de fonctionnalités externes. Pour utiliser cette option, vous devez avoir déjà créé un fichier de fonctionnalités WFS. Pour plus d'informations, reportez-vous à la rubrique Utilisation des fichiers de fonctionnalités externes avec les services WFS.
- Le champ URL présente l'URL utilisée par les clients pour accéder au service WFS. Cette URL utilise le format http://<nom du serveur>:6080/arcgis/services/<nom du dossier (le cas échéant)>/<nom du service>/MapServer/WFSServer.
- Cliquez sur Analyser . Cette fonction examine votre carte ou géodatabase pour voir si elle peut être publiée sur le serveur.Astuce:
Pour disposer d'une surface d'affichage plus grande lors de la configuration du service WFS, cliquez sur Réduire en haut du Editeur de services.
- Le cas échéant, corrigez les erreurs dans la fenêtre Préparation avant de pouvoir publier. Vous pouvez éventuellement traiter les avertissements et les messages informationnels pour améliorer davantage la performance et l'apparence du service WFS. Pour plus d'informations sur la résolution de ces problèmes, reportez-vous à la rubrique Analyse de votre ressource SIG.Remarque :
Vous pouvez enregistrer les dossiers et les géodatabases sur votre site ArcGIS Server et ainsi vous assurer que le serveur puisse reconnaître et utiliser vos données. Si vous effectuez les étapes suivantes, toutes les données référencées par votre ressource SIG qui proviennent d'un dossier ou d'une géodatabase non enregistré seront copiées sur le serveur au moment de la publication. Il s'agit d'une mesure de précaution visant à s'assurer que le serveur peut accéder à toutes les données utilisées par le service. Pour obtenir les instructions complètes d'enregistrement d'un dossier ou d'une géodatabase sur votre site ArcGIS Server, reportez-vous à la rubrique Enregistrement des données avec ArcGIS Server ArcGIS for Desktop.
- Facultativement, dans l'Editeur de services, cliquez sur Aperçu . Cela peut vous donner une idée de l'apparence de votre service WFS sur le Web. Reportez-vous à la rubrique Aperçu d'une carte pour plus d'informations.
- Une fois que vous avez corrigé les erreurs dans votre carte ou géodatabase, cliquez sur Publier .
Utilisation du service WFS
Une fois que vous avez publié un service WFS, il peut être utilisé dans n'importe quel client prenant en charge WFS 1.0.0 ou 1.1.0 et le profil d'entités simples GML, y compris des navigateurs Web. Un navigateur Web constitue l'un des clients les plus simples d'un service WFS. Vous pouvez demander des informations via HTTP ; les réponses ou exceptions sont renvoyées via le navigateur.
Suivez les étapes ci-dessous pour accéder aux services WFS par l'intermédiaire d'un navigateur Web.
- Ouvrez un navigateur Web.
- Effectuez les opérations GetCapabilities, DescribeFeatureType et GetFeature selon les instructions des sections suivantes.
GetCapabilities
Cette demande renvoie tous les types d'entités et les fonctionnalités disponibles à travers le service au format GML. Pour utiliser l'opération GetCapabilities, copiez et collez l'URL du service WFS dans la barre d'adresse et ajoutez ?request=getcapabilities à la fin de l'URL.
Exemple d'URL : http://myserver:6080/arcgis/services/wfs_services/ArcSDE_wfs/GeoDataServer/WFSServer?request=GetCapabilities
Le graphique suivant est un exemple des fonctionnalités renvoyées par l'opération GetCapabilities :
GetCapabilities renvoie également une liste de toutes les classes d'entités et tables disponibles :
DescribeFeatureType
Cette demande décrit les informations de champ concernant une ou plusieurs entités du service WFS. Cela inclut les noms de champs, les types de champs, les valeurs minimales et maximales autorisées dans les champs et toute autre contrainte définie dans un champ des classes d'entités ou tables.
Pour utiliser l'opération DescribeFeatureType, copiez et collez l'URL WFS dans la barre d'adresse et ajoutez ?SERVICE=WFS&VERSION=1.1.0&REQUEST=DescribeFeatureType&VERSION=1.1.0 à la fin de l'URL. Cette demande renvoie toutes les informations de champ concernant chaque type d'entité et table disponible dans le service d'entités.
Exemple d'URL : http://myserver:6080/arcgis/services/wfs_services/ArcSDE_wfs/GeoDataServer/WFSServer?SERVICE=WFS&VERSION=1.1.0&REQUEST=DescribeFeatureType&VERSION=1.1.0
Ajout de filtres
Vous pouvez également spécifier une seule classe d'entités ou table à propos de laquelle vous souhaitez obtenir des informations de champ en ajoutant la demande suivante à la fin de l'URL avec le nom du type d'entité ou de la table : ?SERVICE=WFS&VERSION=1.1.0&REQUEST=DescribeFeatureType&TypeName=<saisir le type d'entité ici>&VERSION=1.1.0.
Pour plus d'informations sur les différents filtres disponibles avec les services WFS, consultez la rubrique Communication avec un service WFS dans un navigateur Web.
Dans l'exemple ci-dessous, la demande DescribeFeatureType permet d'identifier les informations de champ pour le type d'entité des villes.
Exemple d'URL : http://myserver:6080/arcgis/services/wfs_services/ArcSDE_wfs/GeoDataServer/WFSServer?SERVICE=WFS&VERSION=1.1.0&REQUEST=DescribeFeatureType&TypeName=cities&VERSION=1.1.0
GetFeature
Cette demande renvoie des informations concernant des types d'entités spécifiques disponibles par l'intermédiaire du service WFS.
Pour utiliser l'opération GetFeature dans un navigateur Web, copiez et collez l'URL WFS dans la barre d'adresse et ajoutez ?request=getFeature&typename=<saisir le type d'entité ici> à la fin de l'URL. Cette demande renvoie toutes les informations d'attribut et de géométrie concernant chaque entité ou ligne dans le type d'entités.
Exemple d'URL : http://myserver:6080/arcgis/services/wfs_services/ArcSDE_wfs/GeoDataServer/WFSServer?request=getfeature&typename=cities
Ajout de filtres
Vous pouvez ajouter également des filtres dans la demande pour affiner les résultats renvoyés. Par exemple, vous pouvez demander toutes les villes qui se trouvent dans une plage de coordonnées spécifiée. Dans l'exemple ci-dessous, deux villes se trouvent dans une plage de coordonnées spécifiée. Pour plus d'informations sur les différents filtres disponibles avec les services WFS, consultez la rubrique Communication avec un service WFS dans un navigateur Web.
Exemple d'URL : http://myserver:6080/arcgis/services/wfs_services/ArcSDE_wfs/GeoDataServer/WFSServer?request=getfeature&typename=cities&BBOX=46.90,-76.21,42.12,-72.88
Utilisation de l'extension Data Interoperability pour se connecter à un service WFS
L'Extension ArcGIS Data Interoperability pour Desktop vous permet de lire et écrire des données dans des formats autres qu'ArcGIS. Vous pouvez utiliser l'outil Connexions Interoperability qui se trouve dans ArcCatalog ou dans la fenêtre Catalogue d'ArcGIS for Desktop pour vous connecter directement aux formats de données Esri externes, y compris aux services WFS. Une fois la connexion établie, la source de données apparaît sous l'entrée Connexions Interoperability dans l'arborescence du Catalogue. Une connexion ressemble à n'importe quel autre jeu de données, en ce sens que vous pouvez l'ajouter à la table des matières ou l'utiliser dans les outils de géotraitement. Pour plus d'informations sur la connexion à un service WFS à l'aide de l'Extension ArcGIS Data Interoperability pour Desktop , reportez-vous à la rubrique Procédure d'utilisation de WFS avec ArcGIS for Desktop.