IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

WinDev Discussion :

Débogage depuis Windev d’un Webservice REST déployé dans Webdev


Sujet :

WinDev

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Février 2004
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 85
    Par défaut Débogage depuis Windev d’un Webservice REST déployé dans Webdev
    Bonjour,

    Je voudrais déboguer un Webservice REST créé avec Windev 26. Voici ce que je fais :

    - J'ai installé Webdev 26 (10 connexions) en laissant les choix proposé par défaut notamment l’utilisation de IIS
    - Dans la console d’administration Webdev 26 j’ai coché « Autoriser le débogage à distance » de l’onglet « Configuration » comme indiqué dans la doc
    - J'ai désactivé temporairement de pare-feu Windows pour éliminer des éventuels blocages de ports

    Ensuite j'ai créé dans Windev un projet « Webservice REST » en ajoutant un point d’entrée « /test » lui-même appelant une méthode de procédure qui contient :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    PROCÉDURE test()
     
    i est une entier = 5
    i = i +1 // Juste pour placer un point d'arrêt
    RENVOYER DateHeureVersChaîne(DateHeureSys(), "HHmmSSCC") // Afin d'avoir une valeur affichée différente à chaque appel
    Je déploie ensuite le projet sur localhost. Il apparaît donc dans la console d’admin et le WS fonctionne puisque je peux l’appeler sur http://localhost/test et m’affiche l’heure du moment.

    Création et déploiement OK.

    Maintenant que mon WS est dans la console d’amin locale, je voudrais mettre des points d’arrêts pour déboguer (oui c'est quand même mon but). La doc indique qu’il suffit de placer des points d’arrêt puis de lancer le débogage par « Déboguer le Webservice ». Alors donc je clique sur le fameux bouton. Après quelques instants j’ai un dialogue qui me demande si je veux tester par l’outil intégré ou autre. Peu importe ce que je choisi le débogage se lance (et le bouton « Terminer le test » apparait.
    Mais lorsque je recharge la page dans un navigateur ou dans l’outil intégré on ne s’arrête pas sur les points d’arrêts (j’en ai mis un sur les deux dernières lignes de code).

    Par curiosité j’ai supprimé le WS dans la console d’amin où il n’y a donc plus aucun WS. Évidemment on ne peut plus l’appeler dans un navigateur. Mais si je clique à nouveau sur « Déboguer le Webservice » je n’ai pas d’erreur. Il me demande comment je veux déboguer puis se lance le débogage normalement. J’en conclus donc que WD ne vérifie pas si il y a un WS à déboguer.

    Est-ce que j’ai raté quelque chose ?

    Merci de votre aide

  2. #2
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 947
    Billets dans le blog
    1
    Par défaut
    Bonjour,
    "Autoriser le débogage à distance" permet d'intercepter les fonctions EnModeTest, EnModeTestAutomatique et assimilées. Il permet aussi de jouer les scénari de test.
    Pour pouvoir intercepter les point d'arrêts, il faut passer via Webdev ET en mode développement.

  3. #3
    Membre confirmé
    Inscrit en
    Février 2004
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 85
    Par défaut
    Bonjour Voroltinquo et merci pour cette réponse.

    Ce que je comprends dans ta réponse c'est que le serveur d'Application WEBDEV (10 connexions ou pas) sert uniquement au déploiement et l'exécution du WS mais ne permet pas de s'arrêter sur des points d'arrêts. Que pour ça il faut ouvrir le projet et lancer le débogage dans Webdev.

    Mais alors à quoi sert le bouton "Déboguer le WS" dans WD ? Uniquement à ouvrir WDTestRest avec les points d'entrées listés, c'est ça ?

    Merci

  4. #4
    Expert confirmé
    Avatar de Voroltinquo
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Juin 2017
    Messages
    2 947
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Juin 2017
    Messages : 2 947
    Billets dans le blog
    1
    Par défaut
    Ton WS est dans installé sur ton serveur donc il est compilé. Donc les points d'arrêt ne sont plus accessibles. Au même titre qu'il ne sont plus accessibles dans un exe.
    Tu peux exécuter les test préprogrammés. Ou, récupérer les logs créés avec l'option EnModeTest (a condition d'avoir bien dirigé la sortie des Trace)
    Dans ton code, cela revient à faire un truc du style :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    PROCÉDURE test()
    TraceDébut(trFichier,saCheminMonLog)
     
    i est une entier = 5
    Si EnModeTest ALORS
         i = i +1 // Juste pour placer un point d'arrêt
         Trace(i)
    FIN
    TraceFin()
     
    RENVOYER DateHeureVersChaîne(DateHeureSys(), "HHmmSSCC") // Afin d'avoir une valeur affichée différente à chaque appel

  5. #5
    Membre confirmé
    Inscrit en
    Février 2004
    Messages
    85
    Détails du profil
    Informations forums :
    Inscription : Février 2004
    Messages : 85
    Par défaut
    Oui j'utilise déjà l'écriture du contexte et variables dans des fichiers log. Le but de ma demande était justement d'éviter ça en plaçant et en s'arrêtant sur les points d'arrêt.

Discussions similaires

  1. [WD25] Passer une URL dans une variable javascript depuis windev
    Par Frantzkell dans le forum WinDev
    Réponses: 3
    Dernier message: 12/12/2020, 17h30
  2. Réponses: 0
    Dernier message: 23/02/2019, 10h33
  3. [MySQL-5.7] Problème d'insertion dans ma base de donnés mysql depuis windev 18
    Par LeModel dans le forum Requêtes
    Réponses: 3
    Dernier message: 28/02/2018, 15h27
  4. Utilisation de webservice importé dans Windev
    Par crtof dans le forum WinDev
    Réponses: 0
    Dernier message: 15/02/2018, 18h37
  5. Transferrer une image depuis windev sur webdev
    Par manish dans le forum WebDev
    Réponses: 0
    Dernier message: 23/04/2009, 13h22

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo