PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Nouveauté WINDEV 25 !
  • Ce que vous allez apprendre dans cette leçon
  • Présentation
  • Exemple pratique
  • Importation d'un Webservice
  • Consommation d'un Webservice
Leçon 4.12. Consommer un Webservice
Ce que vous allez apprendre dans cette leçon
  • Présentation.
  • Importation et consommation d'un Webservice.
Durée de la leçon

Durée estimée : 10 mn
Leçon précédenteSommaireLeçon suivante
Présentation
Un service Web est généralement défini comme une application accessible via des protocoles Internet standard. Les services Web permettent notamment l'interactivité entre plusieurs ordinateurs connectés sur le réseau Internet.
Via les services Web, il est possible de faire exécuter des procédures et des traitements sur un serveur Web (.NET, SOAP ou J2EE) à distance depuis un poste client.
Avec WINDEV, ces services Web sont utilisables en tant que client, via le protocole SOAP sur HTTP (le protocole standard d'Internet pour le transfert des pages HTML), grâce aux fonctions SOAPxx, DotNetxx et J2EExx.
Quelle que soit la plateforme du serveur Web (.NET, J2EE ...), un service Web est accessible via l'utilisation de SOAP.

Note

Avec WINDEV, il n'est pas nécessaire de maîtriser ces informations. Un assistant se charge de ("presque") tout !

Exemple pratique

Pour tester et manipuler un Webservice, nous mettons à votre disposition un Webservice spécifique pour ce tutoriel.
Intégré au projet "WD Application Complète", ce Webservice permet d'interroger une base fournisseur pour vérifier la disponibilité (stock) d'un produit à partir de sa référence.
Nous allons dans un premier temps, importer le Webservice dans le projet "WD Application Complète", puis l'utiliser dans l'application pour vérifier à partir d'une fiche Produit, la disponibilité du produit affiché.
Importation d'un Webservice
  • Fermez si nécessaire le projet en cours. La page d'accueil de WINDEV apparaît.
  • Dans la page d'accueil, cliquez sur "Cours d'auto-formation" puis cliquez sur "Application complète (Exercice)". Le projet se charge.

    Corrigé

    Si vous n'avez pas créé les fenêtres des leçons précédentes, vous pouvez suivre cette leçon en ouvrant un projet corrigé : dans la page d'accueil de WINDEV (Ctrl + <), cliquez sur "Cours d'auto-formation", puis cliquez sur "Application complète (Avec fenêtres)".
    Un projet corrigé complet de l'application est également disponible : dans la page d'accueil de WINDEV (Ctrl + <), cliquez sur "Cours d'auto-formation", puis cliquez sur "Application complète (Corrigé)"
  • Si nécessaire, placez-vous sur la configuration de projet "Exécutable Windows 32 bits" : dans le volet "Explorateur de projet", dans le dossier "Configurations", double-cliquez sur "Exécutable Windows 32 bits".
  • Pour importer un Webservice dans le projet :
    1. Sous le volet "Projet", dans le groupe "Projet", déroulez "Importer" et sélectionnez "Un Webservice".
    2. L'assistant d'importation se lance. Passez à l'étape suivante.
    3. Indiquez l'adresse à laquelle la description WSDL du Webservice doit être importée :
      https://exemples.webdev.info/WSAUTOFORMATIONV2_WEB/awws/WSAutoformationV2.awws?wsdl

      Rappel : Ce Webservice permet d'interroger une base fournisseur pour vérifier la disponibilité (stock) d'un produit à partir de sa référence.
      Assistant d'importation d'un Webservice
    4. Passez à l'étape suivante. L'importation du Webservice est réalisée.
      Importation réussie
    5. Validez la fenêtre d'information. Le Webservice importé est présent dans le dossier "Webservices importés" du volet "Explorateur de projet".
    6. Dans le volet "Explorateur de projet", déroulez le dossier "Webservices importés".
Arrêtons-nous un instant sur les informations affichées dans le volet "Explorateur de projet" :
Volet 'Explorateur de projet'
La structure est constituée de :
  • le nom du Webservice (WSAutoformationV2 dans cet exemple),
  • le nom de chaque fonction (ProduitEnStock dans cet exemple).
Pour connaître le mode d'appel du Webservice, il suffit de double-cliquer sur le nom de la fonction dans le volet "Explorateur de projet". L'éditeur de code affiche la description de la fonction, avec le prototype de l'appel de la fonction :
Appel de la fonction
Consommation d'un Webservice
Dans notre exemple "WD Application Complète", nous allons intégrer l'appel au Webservice dans l'onglet permettant de voir la liste des produits. Un bouton "En stock ?" permettra de vérifier la disponibilité du produit affiché via le Webservice.
  • Pour utiliser le Webservice :
    1. Ouvrez sous l'éditeur la fenêtre "FEN_Menu" (double-cliquez sur son nom dans le volet "Explorateur de projet" par exemple).
    2. Dans le volet d'onglet "Liste des produits", ajoutez un champ Bouton :
      • Sous le volet "Création", dans le groupe "Champs usuels", cliquez sur Créer un champ Bouton.
      • Cliquez dans la fenêtre sous le champ Bouton "Modifier".
      • Le champ est automatiquement créé.
    3. Modifiez les caractéristiques du champ (option "Description" du menu contextuel). Ce champ a pour nom "BTN_EnStock" et pour libellé "En stock ?".
      Positionnement du champ Bouton 'En stock ?'
    4. Affichez les événements associés au champ (option "Code" du menu contextuel).
    5. Dans l'événement "Clic sur BTN_EnStock", saisissez le code WLangage suivant :
      // Affiche la réponse du Webservice
      InfoConstruit(...
         "Nombre de produits ""%1"" en stock : %2", ...
         COL_Référence, ProduitEnStock(COL_Référence))
      Examinons ce code :
      • La fonction du Webservice ProduitEnStock est appelée. Ce code utilise le prototype de la fonction que nous avons précédemment affiché dans l'éditeur de code.
      • La réponse est mise en forme et affichée.
    6. Fermez l'éditeur de code et enregistrez la fenêtre (Enregistrer la fenêtre ou Ctrl + S).
  • Nous allons maintenant tester le fonctionnement du Webservice :
    1. Lancez le test du projet (Tester le projet parmi les boutons d'accès rapide).
    2. Cliquez si nécessaire sur l'onglet "Liste des produits".
    3. Sélectionnez un produit au hasard dans le champ Table et cliquez sur "En stock ?".
      Test du Webservice
    4. Validez la fenêtre d'information et fermez l'application.
Leçon précédenteSommaireLeçon suivante
Version minimum requise
  • Version 25
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire