2010-03-23 28 views
1

J'utilise la bibliothèque cliente XML-RPC de Zend 1.10 pour faire des requêtes XML-RPC vers un autre serveur. L'une des méthodes que je dois appeler utilise un type i8 (a.k.a. ex:i8), c'est-à-dire un grand entier étendu. Ceci est pris en charge dans Zend (voir http://framework.zend.com/apidoc/1.10/Zend_XmlRpc/Value/Zend_XmlRpc_Value_BigInteger.html). Cependant, chaque fois que j'essaye de faire quelques appels, je reçois une exception (je pense avant qu'il contacte le serveur).Client PHP Zend XML-RPC - "Type inconnu: i8" lors d'une requête avec Zend_Crypt_Math_BigInteger?

exception 'Zend_XmlRpc_Client_FaultException' with message 'Failed to parse XML-RPC request: Unknown type: i8' in /usr/local/myprog/libs/zend/library/Zend/XmlRpc/Client.php:370 
Stack trace: 
#0 /usr/local/myprog/client.php(102): Zend_XmlRpc_Client->call('methodCall', Array) 
#1 {main} 

En utilisant getLastRequest() sur l'objet client, je peux voir que le XML qu'il veut envoyer est le suivant:

?xml version="1.0" encoding="UTF-8"?> 
<methodCall><methodName>methodCall</methodName><params><param/><param/></params></methodCall> 

On dirait que Zend n'ajoute les espaces de noms au format XML. Comment puis-je contourner cela? Comment faire un appel de méthode XML-RPC avec le paramètre i8/ex:i8/BigInteger?

+0

Vous avez déjà résolu ce problème? –

+0

Phil, non, je n'ai pas résolu cela. – Rory

Répondre

0

En tant que mainteneur précédent et auteur original du support Zend_XmlRpc i8, je dois admettre que cela ressemble à un bug pour moi. Il n'y a actuellement aucun moyen de dire au client XML/RPC de travailler ajouter la déclaration d'espace de noms correcte.