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:
Dans la doc de la méthode j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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;
Request:
Response:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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>
Quand je lance mon script, j'ai l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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>
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
Partager