Bonjour,

j'ai un site qui se connecte à un webservice fait avec WebDev et tout a subitement arreté de fonctionner , plus ou moins au même moment à priori que la mise a jour du service WebDev en version 18.

je ne peux plus apeller aucune méthode, voici un exemple de code minimaliste qui reproduit le problème :

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
21
22
 
<?php
error_reporting(E_ALL);
$url          = 'http://www.xxxxx.com/service.awws?wsdl'; 
 
$sKey    = 'thekey';
 
$client= new SoapClient($url, array('trace' => 1,
                                       'exception' => 1,
                                       'encoding'      => 'UTF-8',
                                       'cache_wsdl' => WSDL_CACHE_NONE));
 
 
$params = array('sKey' => $sKey, 'nLangID' => 1);
 
$res      = $client->TPGetLocalisationVersion($params);
 
echo '<pre>Res : ';
print_r($res);
echo '</pre>';
 
?>
erreur retournée :

Fatal error: Uncaught SoapFault exception: [HTTP] Unable to parse URL in /home/xxxx/www/test.php:14 Stack trace: #0 [internal function]: SoapClient->__doRequest('__call('TPGetLocalisati...', Array) #2 /home/tmpweb/www/test.php(14): SoapClient->TPGetLocalisationVersion(Array) #3 {main} thrown in /home/xxxx/www/test.php on line 14
la fonction TPGetLocalisationVersion est bien disponible sur le serveur et listé dans le WSDL et les paramètres sont corrects.

Bizarrement d autres clients du webservice (ios et android) n'ont eu aucun soucis. seul les appels PHP se sont subitement mis à retourner une SoapFault

une idée pour debugger ça ?

j'ai bien accès à la liste des méthodes depuis PHP si j'appelle $client->__getFunctions()

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
Array
(
....
    [59] => tTPGetLocalisationResponse TPGetLocalisation(tTPGetLocalisation $parameters)
.....
)