Précédent   Forum du club des développeurs et IT Pro > Autres langages > Perl > Web
Web Toutes vos questions sur la construction de pages web en Perl (CGI, Ajax, mod_perl, sessions, ...) Avant de poster, veuillez consulter les FAQs perl, les cours Perl et les sources Perl.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 17/05/2012, 13h47   #1
will1v
Invité de passage
 
Homme
Inscription : juillet 2011
Messages : 4
Détails du profil
Informations personnelles :
Sexe : Homme
Âge : 26
Localisation : Royaume-Uni

Informations forums :
Inscription : juillet 2011
Messages : 4
Points : 0
Points : 0
Par défaut Soap lite: URI is not provided as an attribute for method

Bonjour,

Je suis débutant en perl et en webservices (ça commence mal !) mais mon besoin est assez simple.

Un webservice est disponible pour récupérer l'id d'un utilisateur à partir de son login NT et j'essaie d'y faire appel depuis un script Perl. J'utilise Soap Lite mais je n'arrive pas à faire appel au webservice, malgré de nombreux tutoriels trouvés ici et là.

Mon script Perl:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#########################################################################
# Script Name		: NTLoginToUID.pl
# Goal					: Get an UID from an NT login
# Args					: 
# Output				: 
# History				:
#########################################################################
 
use SOAP::Lite;
 
my $soap = SOAP::Lite
		-> uri('http://xxxxxxx/xxxxxxx/directory.asmx')
		-> proxy('http://xxxxxxx/xxxxxxx/directory.asmx?wsdl');
 
my $method = SOAP::Data->name('GetUIDFromNTLogin');
 
my @params = ( SOAP::Data->name(NTLogin => '123456'));
 
 
print $soap->call($method => @params)->result;
Dans la doc de la méthode j'ai :
Request:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
POST /xxxxxxx/directory.asmx HTTP/1.1
Host: xxxxxxx
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://tempuri.org/GetUIDFromNTLogin"
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetUIDFromNTLogin xmlns="http://tempuri.org/">
      <NTLogin>string</NTLogin>
    </GetUIDFromNTLogin>
  </soap:Body>
</soap:Envelope>
Response:
Code :
1
2
3
4
5
6
7
8
9
10
11
12
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
 
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
  <soap:Body>
    <GetUIDFromNTLoginResponse xmlns="http://tempuri.org/">
      <GetUIDFromNTLoginResult>string</GetUIDFromNTLoginResult>
    </GetUIDFromNTLoginResponse>
  </soap:Body>
</soap:Envelope>
Quand je lance mon script, j'ai l'erreur suivante :
URI is not provided as an attribute for method (GetUIDFromNTLogin)


J'ai cherché sur le net, sur Developpez.net, mais je n'ai pas trouvé de solution... Toute piste serait extrêmement appréciée ! (Je bloque depuis un bout de temps déjà...)

Merci pour votre aide,

Will1v
will1v est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 19h58.


 
 
 
 
Partenaires

Hébergement Web