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

XML/XSL et SOAP Discussion :

[SOAP-Lite] Impossible de passer un paramètre


Sujet :

XML/XSL et SOAP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 35
    Par défaut [SOAP-Lite] Impossible de passer un paramètre
    Bonjour,


    J'écris un script perl tout simple en utilisant la lib SOAP-Lite qui est censé envoyer une valeur à un web service codé en JAVA. La communication entre les deux se fait bien mais impossible d'envoyer au WS le paramètre passé dans mon script !

    Voici le code du script perl, le param envoyé est '$nb' :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    use SOAP::Lite;
     
    $nb = 12;
     
    my $soap_response = SOAP::Lite
            -> uri('http://endpoint/')
            -> proxy('http://192.168.6.154:8080/Hello/HelloService');
            -> getHello($nb);
     
    $res = $soap_response->result;
     
    print "result is $res\n";

    Et ma classe Java avec la fonction getHello :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    package endpoint;
     
    import javax.jws.WebService;
     
    @WebService
    public class Hello
    {
        public int getHello(int toto)
        {
    	//return "Hello " + toto + "!";
            return toto;
        }
    }

    A savoir que si je déclare getHello en String et que je renvoi une chaîne cela fonctionne. De même qu'en local par le navigateur il me renvoi bien le int passé. Mais depuis mon script Perl impossible


    Donc si vous avez une idée, merci d'avance pour votre aide!


    PS : Mon serveur d'appli c'est Glassfish.

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Mai 2004
    Messages
    83
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2004
    Messages : 83
    Par défaut type casting
    Bonsoir,

    Perl est un langage à typage dynamique, je tenterais donc de te proposer de convertir ta variable vers le bon type avant envoi au service.

    cf. http://dev.perl.org/perl6/rfc/89.html

    Sinon en deux je prendrais un vision plus optimiste en me demandant si c'est bien utile de forcer l'appel de service en int et pourquoi ne pas passer par un parseInt en java sur un type chaîne.

    Xavier

Discussions similaires

  1. [AJAX] Impossible de passer des paramètres en utilisant POST
    Par GérardMartinelli dans le forum AJAX
    Réponses: 2
    Dernier message: 17/02/2014, 16h10
  2. [2008R2] Impossible de passer des paramètres dans l'URL du rapport
    Par martial80 dans le forum SSRS
    Réponses: 21
    Dernier message: 31/05/2012, 17h46
  3. Passer en paramètre d'une fonction (...)
    Par Captain_JS dans le forum C++
    Réponses: 5
    Dernier message: 03/11/2004, 07h18
  4. Passer en paramètre un chemin dans redirection
    Par croco83 dans le forum ASP
    Réponses: 5
    Dernier message: 07/05/2004, 08h30
  5. [struts] passer un paramètre de page via un findForward
    Par Boosters dans le forum Struts 1
    Réponses: 4
    Dernier message: 08/03/2004, 17h35

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