Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > PEAR
PEAR Forum d'entraide sur le framework PHP : PEAR. Avant de poster -> cours PEAR.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/12/2007, 15h31   #1
Invité de passage
 
Inscription : août 2002
Messages : 8
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 8
Points : 2
Points : 2
Par défaut [SOAP] Support des types de données complexes

Bonjour,

je travaille actuellement sur une implémentation de services web sous pear-soap. Le systeme est en place, tout fonctionne correctement mais seulement lorsque le client est PHP.

En effet, si un client dotnet ou java tente de consommer les services des exceptions remontent (pour info le wsdl est correctement parsé).

La réponse est correctement encapsulée et typée, mais si celle ci contient une structure dont un des champs est un tableau de structure par exemple, la rien ne va plus. Le tableau inclut dans la structure est typé "Struct", et le type défini dans le wsdl n'est pas repris (pourtant le tableau de mapping dispatchMap est correctement chargé, il a donc toutes les infos pour flaggé chaque champs/sous champs retournés par la méthode).

Apres un investigation un peu plus poussée en tracant le code, j'ai l'impression que le serveur pear-soap qui construit la réponse ne sait tout simplement pas typer les données qu'il retourne dans le message XML (en dehors du type de retour de la méthode appelée qui lui est bien repris et encapsule bien la réponse).

Quelqu'un a t-il un retour d'experience a ce sujet ?

Merci,
elendil
elendil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/12/2007, 10h58   #2
Invité de passage
 
Inscription : août 2002
Messages : 8
Détails du profil
Informations forums :
Inscription : août 2002
Messages : 8
Points : 2
Points : 2
bon apriori ce n'etait pas le cas

j'ai du finalement réécrire la fonction buildResult de classe SOAP_server qui prend pourtant en parametre le type de retour de la méthode appelée...

en parcourant récursivement chaque type rencontré dans le résultat de la méthode j'ai maintenant tous mes types de données correctement typé dans la réponse

a+
elendil est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 02h23.


 
 
 
 
Partenaires

Hébergement Web