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

  1. #1
    Responsable Perl et Outils

    Recherche rédacteur article Perl et les services web (SOAP)
    Bonjour,

    Je recherche des volontaires pour m'aider à rédiger un article sur l'utilisation des services web en perl via le module SOAP::Lite.
    Je me suis rendu compte qu'il est difficile d'en trouver sur le net afin de débuter.

    Le but serait d'écrire un article afin d'expliquer ce qu'est un service web, de lister certains qui sont gratuit. D'expliquer comment les interroger via perl et SOAP::Lite avec des exemples simples et surtout fonctionnels. De montrer comment on peut créer un client, un serveur SOAP.
    D'expliquer un minimum le contenu d'un fichier wsdl afin d'être capable de connaitre les méthodes mises à disposition et des résultats retournées d'un service web, etc etc.

    si vous utilisez déjà SOAP::Lite, vous êtes le bienvenu, si vous connaissez les services web, même sans connaitre perl, vous pouvez toujours nous aider.

    Merci.

  2. #2

  3. #3
    Futur Membre du Club
    Bonjour djibril,

    Je recherche activement ce genre de tutoriel Perl, mais vu le nombre de réponses, je ne suis pas sur que tu ai rédigé celui-ci.
    Dans le doute... As-tu fais de tels documents ? Je suis preneur

    Cdt

  4. #4

  5. #5
    Futur Membre du Club
    Mince,
    merci quand même et qui sais peut être je reviendrai vers toi dans quelques temps avec plus de connaissance sur le sujet et une furieuse envie de partager

  6. #6

  7. #7
    Membre régulier
    Soap la galère.
    Ce genres de tutoriel Perl m'intéresserait au plus au point. En effet ça fait deux jours maintenant que j'essaye de faire un pseudo webservice avec une partie Perl et une partie Java.

    Pour la partie Java c'est passé relativement bien, j'arrive a récupérer les éléments d'une page statique (qui renvoi toujours la même réponse SOAP par le biais du php et un bout XML).

    Pour la partie Perl c'est la que ça se corse, en effet impossible de trouver des exemples fonctionnels sur le web pour faire ce que je veux.

    Voici ce que je veux faire :

    Un client sert à afficher des statistique sur une machine via une interrogation distante en SOAP.

    Le programme qui collecte les données a une partie communicante qui serait un serveur Http SOAP.

    Ce programme c'est un script perl qui calcule en temps réel les données, à partir de messages reçu sous différentes formes (Lecture de fichiers en continue, Bases de données rrdtool, appel de ligne de commande).

    Je pensais pouvoir intégrer facilement à mon script, un serveur http qui répondrai au SOAP (via les modules perl SOAP::Transport::HTTP::Server/Daemon/CGI/Apache). Mais bon impossible de trouver un exemple fonctionnel et/ou qui fasse ce que je veux : une partie du script(Programme ?) est un serveur http répondant au requête soap en consultant des objects mise à jour en temps réel.

    En effet les exemples d'utilisation de SOAP::Transport::HTTP:aemon ne montre que l'appel a des modules. (cf les documentations qui suivent)

    Voici déjà une partie des documentations trouvées/utilisées :

    http://www.perl.com/pub/a/2001/04/24/soap.html <= exemple de code général
    http://www.perl.com/pub/a/2001/01/soap.html <= exemple de code général
    http://search.cpan.org/~byrne/SOAP-Lite-0.65_5/lib/OldDocs/SOAP/Transport/HTTP.pm <= beaucoup de liens brisée, et pas très claire.
    Mieux vaut poser une question con que de le rester.
    Ya pas que le whisky dans la vie y a la vodka aussi.

  8. #8
    Futur Membre du Club
    Je confirme ce que dit ITCsoft54...

    Par manque d'info sur SOAP en Perl, et comme notre besoin est ponctuel, on s'est contenté d'utilisé un module LWP::UserAgent associé à HTTP::Request::Common qw(POST) pour "causer" de serveur à serveur, avec un petit XML amoureusement construit à la mimine !

  9. #9
    Membre régulier
    Bonjour,

    Étant donnée que ça semble ne plus intéressé seulement moi, j'ai décidé de mettre en ligne le code et de vous le commenter.

    Vous aurez besoin d'installer SOAP::Lite. Si vous l'installer via cpan, normalement il devrait installer tous les modules necessaire.

    Dans l'exemple il y aura un webservice pour faire les actions suivante :
    - presenteToi : exemple de fonction sans parametre
    - presenteMoi : exemple de fonction avec parametre
    - getValeurCompteur : exemple de fonction threader du coté Serveur.

    vous trouverez les fichiers ici :

    http://itcsoft54.free.fr/developpez....erlsoap.tar.gz

    Le très bon tutoriel anglais qui m'a inspiré :

    http://guide.soaplite.com

    Remarque : le cpan de perl 5.10.1 semble poser problème pour l'installation des modules : un message "Can't locate SOAP/Transport/HTTP/Daemon.pm in @INC ..." est ne permet pas d'executer les exemples.
    Mieux vaut poser une question con que de le rester.
    Ya pas que le whisky dans la vie y a la vodka aussi.

  10. #10
    Membre éclairé
    Je vous préviens j'y connais strictement rien à SOAP, à part celle qu'on fait chauffer l'hiver...

    Cela dit est-ce que le module XML::RPC répond aux besoins du genre ?

    @+
    Mr6

  11. #11
    Membre régulier
    ils répondent aux même besoins. Les premiers résultat de google pourrons t'en apprendre plus.
    Mieux vaut poser une question con que de le rester.
    Ya pas que le whisky dans la vie y a la vodka aussi.

  12. #12
    Membre éprouvé
    Bonjour Djibril

    Est-ce que tu pu faire ton turoriel à ce sujet ? ou est-ce que tu as eu des retours d'expériences qui pourraient nous aiguiller sur la démarche à suivre ?

    merci

  13. #13
    Responsable Perl et Outils

    Malheureusement non, je n'ai rien fait.

    @ITCsoft54 es-tu chaud pour qu'on en fasse un à partir de te codes ?

  14. #14
    Membre régulier
    djibril, asma4,
    je n'ai pas refait de SOAP avec perl depuis que j'ai posté l'exemple en tar.gz le 03/10/2010 23h17. J'ai mis a jour ma distrib entre temps et je n'ai pas réussi à corriger le problème du message "Can't locate SOAP/Transport/HTTP/Daemon.pm in @INC ...".

    Comme l'a dit vil_farfadet a son époque, c'était pour un besoin ponctuel. Ce besoin, c'était pour rendre disponible des stats d'appel que je moulinais à partir des logs d'appel d'un asterisk. Depuis l'asterisk a été remplacé par un lync et l'outil est obsolète.

    L'exemple était assez fonctionnel il me semble, s'il peut te servir.
    Mieux vaut poser une question con que de le rester.
    Ya pas que le whisky dans la vie y a la vodka aussi.

  15. #15
    Responsable Perl et Outils

    N'ayant jamais eu le besoin de faire du soap, je ne me suis jamais penché sur le sujet longuement. Mais si tes programmes fonctionnent bien,, on peut toujours faire un petit article d'introduction en se basant dessus. J'avais surement dû y jeter un coup d’œil y a quelques temps, mais bon, j'avais abandonné.
    Donc si tu veux, on peut s'y remettre ?

  16. #16
    Membre éprouvé
    Bonjour à tous les deux

    est-ce que il y a un standard pour le développement des web services avec PERL ?
    j'ai vu qu'il existait un livre dans les éditions Oreilly mais je ne sais pas ce que ça vaut

    http://shop.oreilly.com/product/9780596002060.do

    en plus la dernière édition remonte à 2003

    En tout cas ça ne m'as pas l'air très répandu par rapport aux mastodontes DOT NET et Java

  17. #17
    Membre régulier
    Le site dont j'avais posté l'adresse (http://guide.soaplite.com/) reste le plus complet en la matière. Malheureusement il semble un peu abandonné. Cependant tous les exemples sont complet. Le cookbook disponible sur le site n'existait pas à l'époque, mais il a l'air de compléter la partie du site sur laquelle on arrive et qui n'est pas complète.

    Pour les lib "standard" pour le développement Perl c'est SOAP::Lite, si tu entend pas standard le plus répandu. Si tu entend par "standard", c'est dans le Core de Perl, il n'y a(vait) rien (à l'époque ?).

    Pour faire un petit tuto, je suis pas contre, mais je n'ai pas le temps de structurer un article pour qu'il soit digne de ce nom. Si tu me fait le corps de l'article, je veux biens rédiger une ou plusieurs partie, me replonger dans les exemples de http://guide.soaplite.com/ pour le plaisir ^^'.

    Après si tu trouves d'autres ambitieux on peut voir avec l'auteur pour faire une traduction du site http://guide.soaplite.com/
    Mieux vaut poser une question con que de le rester.
    Ya pas que le whisky dans la vie y a la vodka aussi.

  18. #18
    Responsable Perl et Outils

    Je suis partant pour trois choses :
    1. faire une traduction du site http://guide.soaplite.com/ ;
    2. faire une traduction du site http://cookbook.soaplite.com/ (cookbook) ;
    3. faire un article avec ton exemple, histoire d'avoir un exemple fonctionnel.


    Si vous êtes courageux, je peux faire une demande d'autorisation à l'auteur pour en faire une traduction.

    Qu'en pensez-vous ?

  19. #19
    Membre régulier
    Je suis partant pour la traduction mais pas tout seul (traduire un site et un cookbook c'est très long.).

    Je suis partant pour la traduction seulement si on est au moins deux traducteurs et au moins un relecteurs.

    Pour l'exemple je pense qu'il faut retravailler un exemple plus parlant, en prenant un mini projet pour exemple. Il reste a en définir les limites. Je pense que le mieux serait de passé sur SOAP un programme déjà existant, pour faire des appels à distances sur son contenu.
    Mieux vaut poser une question con que de le rester.
    Ya pas que le whisky dans la vie y a la vodka aussi.

  20. #20
    Responsable Perl et Outils

    Dans ce cas, je suis partant pour effectuer la traduction avec toi.
    Pour la relecture technique et orthographique, on pourra utiliser les services de developpez.com. Ne te fait pas de souci à ce niveau.

    Pour l'article et son exemple, je veux bien que l'on utilise un exemple parlant, mais faut le trouver. On pourrait peut-être voir ce qui se fait dans d'autres langages (PHP, JAVA) histoire de reprendre les exemples. Si tu as des propositions, je suis partant.