La spécification WPS (Web Processing Service) de l'OGC (Open Geospatial Consortium, Inc.) est une spécification internationale de diffusion et d’exécution de traitement géospatial sur le Web. Lorsqu'un service de géotraitement est publié avec fonctionnalité WPS, tout client prenant en charge WPS peut accéder aux données. Si vous ne connaissez pas WPS et souhaitez en savoir plus avant d’entreprendre ce didacticiel, reportez-vous à la rubrique Services WPS.
Ce didacticiel vous guide dans le processus de publication dans ArcGIS Server d’un service de géotraitement accessible par les clients WPS. Pour ce faire, vous devez préparer un outil dans ArcGIS Desktop, exécuter cet outil et obtenir un résultat satisfaisant, puis publier le résultat du géotraitement avec la fonctionnalité WPS activée.
Avant de commencer ce didacticiel
Avec ArcGIS Server 10.8.1 ou version ultérieure, vous pouvez publier un outil Web ou un service de géotraitement à partir de ArcGIS Pro ou de ArcGIS Desktop. Si votre version de ArcGIS Server est la version 10.8 ou antérieure, vous ne pouvez que publier un service de géotraitement WPS à partir de ArcGIS Desktop :
- Pour plus d’informations sur la configuration de votre site ArcGIS Server, reportez-vous à la rubrique Configuration d’un déploiement à une seule machine.
- Pour savoir comment mettre à disposition du serveur les données référencées par la ressource SIG, consultez la rubrique Rendre vos données accessibles à ArcGIS Server.
Publication d’un service WPS à partir de ArcGIS Pro
Avant de configurer un service WPS, vous devez publier votre analyse dans ArcGIS Server. Si le serveur est fédéré, publiez votre analyse en tant qu’outil Web. Si votre serveur est un déploiement à une seule machine, publiez-le en tant que service de géotraitement. Pour publier en tant qu’outil Web, reportez-vous à la rubrique Présentation rapide de la création et du partage d’un outil Web. Pour publier en tant que service de géotraitement, reportez-vous à la rubrique Présentation rapide de la création et du partage d’un service de géotraitement. Une fois que vous avez publié un outil Web ou un service de géotraitement, configurez un service WPS en procédant comme suit :
- Se connecter à ArcGIS Server Manager
- Dans l’onglet Services par défaut, localisez le lien de votre service publié et cliquez dessus.
- Dans l’onglet Capabilities (Fonctionnalités), cochez la case WPS.
Une fois l’option WPS sélectionnée, les propriétés du service WPS apparaissent. Vous pouvez configurer les propriétés telles que Name (Nom), Abstract (Résumé) et Title (Titre).
Publication d’un service WPS dans ArcGIS Desktop
Contrairement à la publication à partir de ArcGIS Pro, vous pouvez uniquement publier des analyses en tant qu’outil Web ou service de géotraitement via une connexion serveur. Toutefois, vous pouvez configurer un service WPS pendant le processus de publication, en plus de le configurer dans ArcGIS Server Manager après la publication. Les étapes détaillées de la publication sont décrites ci-dessous :
Préparation de l’outil de géotraitement dans ArcGIS Desktop
Un service de géotraitement comporte une ou plusieurs tâches. Une tâche est semblable à un outil de géotraitement, car elle accepte des paramètres et renvoie des résultats ; il s’agit en fait d’un terme utilisé par les clients de ArcGIS Server pour décrire les routines qui exécutent un travail sur le serveur et renvoient les résultats. Par exemple, vous pouvez créer un outil de géotraitement qui délimite les bassins versants en fonction des données d’utilisation du sol et d’altitude. Cet outil peut ensuite être publié avec la fonctionnalité WPS activée et être utilisé en tant que tâche dans une application Web conforme à la spécification WPS.
La rubrique Création de tâches de géotraitement avec ModelBuilder vous guidera dans les éléments à considérer lors de la création d’un outil de géotraitement.
Exécuter l'outil
Avant de publier l’outil, exécutez-le d’abord et obtenez un résultat de géotraitement adéquat dans la fenêtre Results (Résultats). Pour ce faire, procédez comme suit :
- Dans l’arborescence Catalog (Catalogue), double-cliquez sur votre outil de géotraitement.
- Entrez les valeurs de paramètre appropriées et cliquez sur OK pour exécuter l’outil.
Lorsque l’outil est exécuté avec succès, la fenêtre Results (Résultats) apparaît.
Publier le résultat
Après l’exécution réussie de l’outil, vous pouvez publier votre outil de géotraitement en tant que service de géotraitement. Dans cette procédure, vous activez la fonctionnalité WPS, qui assure la conformité de votre service de géotraitement (et des tâches subséquentes) à la spécification WPS de l'OGC.
- Cliquez avec le bouton droit sur le résultat du géotraitement et sélectionnez Share As (Partager en tant que) > Geoprocessing Service (Service de géotraitement).
- Dans la fenêtre Partager en tant que service, sélectionnez Publier un service. Cliquez sur Next (Suivant).
- Dans la boîte de dialogue Publish a Service (Publier un service), cliquez sur Connect to ArcGIS Server (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 Next (Suivant).
- Dans Server URL (URL du serveur), tapez l’URL du site ArcGIS Server auquel vous souhaitez vous connecter. Par exemple : http://gisserver.domain.com: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.
- Indiquez votre nom d’utilisateur et votre mot de passe. Cliquez sur Finish (Terminer).
- Dans la fenêtre Publish a Service (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 Next (Suivant).
Par défaut, les services sont publiés sur le dossier (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. - La fenêtre Service Editor (Éditeur de services) s’affiche. Dans la fenêtre Service Editor (Éditeur de services), sélectionnez les opérations que les utilisateurs peuvent effectuer avec le service de géotraitement. Vous pouvez contrôler en détail la manière dont le serveur exposera votre service de géotraitement. Cliquez sur l'onglet Fonctionnalités.
- Le géotraitement est activé par défaut. Sélectionnez WPS.
- Dans le volet gauche de la fenêtre Service Editor (Éditeur de services), cliquez sur WPS. Ce volet vous permet de sélectionner la configuration des propriétés de votre service WPS. En définissant les propriétés du service WPS, les clients comprennent mieux le publicateur de service.
- Le champ URL affiche l’URL utilisée par les clients pour accéder au service WPS. L’URL utilise le format http://gisserver.domain.com:6080/arcgis/services/folder/service/GPServer/WPSServer.
Remarque :
Copiez et enregistrez l'URL du service WPS. Vous en aurez besoin à d'autres étapes de ce didacticiel.
- Pour configurer un service WPS avec les fichiers de fonctionnalités générés par le système, utilisez l’option par défaut Enter service properties below (Saisir les propriétés du service ci-dessous). Les champs Name (Nom), Title (Titre) et OnlineResource (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 WPS disponible.
- Pour configurer un service WPS et utiliser des fichiers de fonctionnalités externes, sélectionnez Use external capabilities files (Utiliser les fichiers de fonctionnalités externes). Pour utiliser cette option, vous devez avoir déjà créé un fichier de fonctionnalités WPS.
- Les propriétés Namespace (Espace de noms) et Prefix (Préfixe) sont les seules propriétés qui permettent de distinguer vos processus WPS des autres processus WPS. Elles sont renseignées automatiquement et ne doivent pas être modifiées.
Conseil :
Pour connaître les astuces et les pratiques conseillées concernant la définition des propriétés de service de géotraitement à l’aide de l’Éditeur de services (Service Editor), reportez-vous à la rubrique Paramètres du service de géotraitement : Généralités. Pour plus d’informations sur la façon de configurer au mieux vos services en vue du déploiement, reportez-vous à la rubrique Optimisation et configuration des services.
- Le champ URL affiche l’URL utilisée par les clients pour accéder au service WPS. L’URL utilise le format http://gisserver.domain.com:6080/arcgis/services/folder/service/GPServer/WPSServer.
- Cliquez sur le bouton Analyze (Analyser). Cette fonction examine votre résultat pour voir s’il peut être publié sur le serveur en tant que service WPS.
Conseil :
Pour agrandir la zone d’affichage lors de la configuration du service WPS, cliquez sur le bouton Collapse (Réduire) situé en haut de la fenêtre Service Editor (Éditeur de services).
- Corrigez les erreurs dans la section Errors (Erreurs) de la fenêtre Prepare (Préparation). Vous devez le faire pour pouvoir publier votre résultat en tant que service WPS. Vous pouvez éventuellement traiter les avertissements et les messages informationnels pour améliorer davantage la performance et l'apparence de votre service. 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 outil qui proviennent d’un dossier ou d’une géodatabase non enregistrés 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 des instructions complètes d’inscription d’un dossier ou d’une géodatabase auprès de votre site ArcGIS Server, reportez-vous à la rubrique Inscription de vos données auprès de ArcGIS Server à l’aide de ArcGIS Desktop ou de ArcGIS Pro.
- Dans l'éditeur de services, vous pouvez également cliquer sur Aperçu . Cela peut vous offrir un aperçu de l’apparence de la boîte de dialogue de votre outil sur le Web.
- Après avoir corrigé les erreurs dans votre modèle de géotraitement, cliquez sur Publish (Publier)
Obtention et description d’un service WPS
Une fois que vous avez publié un service WPS, il peut être utilisé dans n'importe quel client prenant en charge WPS 1.0.0. Un navigateur Web constitue l'un des clients les plus simples d'un service WPS. 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 WPS par l'intermédiaire d'un navigateur Web.
- Ouvrez un navigateur Web.
- Effectuez les opérations GetCapabilities et DescribeProcess selon les instructions des sections suivantes.
GetCapabilities
Cette demande renvoie tous les processus et métadonnées disponibles par l'intermédiaire du service au format GML. Pour utiliser l’opération GetCapabilities, copiez et collez l’URL du service WPS dans la barre d’adresse et ajoutez ?SERVICE=WPS&VERSION=1.0.0&REQUEST=GetCapabilities à la fin de l’URL.
Exemple d’URL : https://gisserver.domain.com:6443/arcgis/services/my_wps/GPServer/WPSServer?SERVICE=WPS&VERSION=1.0.0&REQUEST=GetCapabilities
Exemple d’URL : https://gisserver.domain.com/webadaptor//services/my_wps/GPServer/WPSServer?Service=WPS&Version=1.0.0&Request=GetCapabilities
DescribeProcess
La réponse à une demande DescribeProcess contient des informations détaillées concernant un processus particulier, telles que l’identifiant unique du processus et l’identifiant, le type et la structure de chaque paramètre obligatoire ou facultatif en entrée ou en sortie pour le processus. Les clients WPS ont besoin de cette information pour envoyer des demandes subséquentes d'exécution du traitement géospatial réel. Pour utiliser l’opération DescribeProcess, copiez et collez l’URL du service WPS dans la barre d’adresse et ajoutez ?SERVICE=WPS&VERSION=1.0.0&REQUEST=DescribeProcess à la fin de l’URL.
Exemple d’URL : https://gisserver.domain.com:6443/arcgis/services/my_wps/GPServer/WPSServer?SERVICE=WPS&VERSION=1.0.0&REQUEST=DescribeProcess&Identifier=output_feature_layer
Exemple d’URL : https://gisserver.domain.com/webadaptor/services/my_wps/GPServer/WPSServer?Service=WPS&Version=1.0.0&Request=DescribeProcess&Identifier=output_feature_layer
Exécution d’un processus de service WPS
Pour effectuer le traitement géospatial sur le Web, vous pouvez envoyer une demande Exécuter au service WPS par l’intermédiaire d’un client WPS. Une demande Exécuter contient généralement la valeur ou la référence de chaque paramètre en entrée ou en sortie du processus WPS et précise en outre comment le service WPS doit renvoyer le résultat du processus. La réponse à une demande d'exécution contient le résultat intégré du traitement spatial ; elle peut être configurée pour renvoyer les résultats des travaux récents de traitement spatial.
Les opérations d'exécution sont généralement appelées au moyen d'une requête HTTP Post dans le client WPS. Voici un échantillon de demande Exécuter envoyée à un exemple d’URL : https://gisserver.domain.com:6443/arcgis/services/my_wps/GPServer/WPSServer, ou un exemple d’URL équivalent : https://gisserver.domain.com/webadaptor/services/my_wps/GPServer/WPSServer?Service=WPS&Version=1.0.0&Request=Execute&Identifier=SampleProcessId:
<wps:Execute xmlns:wps="http://www.opengis.net/wps/1.0.0" service="WPS" version="1.0.0" language="en-US">
<ows:Identifier xmlns:ows="http://www.opengis.net/ows/1.1">SampleProcessId</ows:Identifier>
<wps:DataInputs>
<wps:Input>
<ows:Identifier xmlns:ows="http://www.opengis.net/ows/1.1">Input_String</ows:Identifier>
<wps:Data>
<wps:LiteralData dataType="xs:string">abcdefg</wps:LiteralData>
</wps:Data>
</wps:Input>
</wps:DataInputs>
<wps:ResponseForm>
<wps:ResponseDocument storeExecuteResponse="true" lineage="true" status="false">
<wps:Output schema="http://www.w3.org/TR/xmlschema-2/#string" asReference="false">
<ows:Identifier xmlns:ows="http://www.opengis.net/ows/1.1">Output_String</ows:Identifier>
</wps:Output>
</wps:ResponseDocument>
</wps:ResponseForm>
</wps:Execute>
Pour en savoir plus sur les demandes WPS et les paramètres connexes, consultez la page sur la spécification WPS 1.0.0 de l’OGC. Esri propose également une page Web relative aux l’Normes ouvertes qui détaille sa prise en charge des services OGC dans ArcGIS.
Vous avez un commentaire à formuler concernant cette rubrique ?