Клиент PHP Zend XML-RPC — неизвестный тип: i8 при выполнении запроса с помощью Zend_Crypt_Math_BigInteger?

Я использую клиентскую библиотеку Zend 1.10 XML-RPC для выполнения запросов XML-RPC к другому серверу. Один из методов, которые я должен вызвать, использует тип i8 (также известный как ex:i8), т. е. расширенное большое целое число. Это поддерживается в Zend (см. http://framework.zend.com/apidoc/1.10/Zend_XmlRpc/Value/Zend_XmlRpc_Value_BigInteger.html). Однако всякий раз, когда я пытаюсь сделать несколько вызовов, я получаю исключение (я думаю, прежде чем он свяжется с сервером).

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}

Используя getLastRequest() в клиентском объекте, я вижу, что XML, который он хочет отправить, выглядит следующим образом:

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

Похоже, Zend не добавляет пространства имен в XML. Как я могу обойти это? Как сделать вызов метода XML-RPC с параметром i8/ex:i8/BigInteger?


person Rory    schedule 23.03.2010    source источник
comment
Фил, нет, я не решил это.   -  person Rory    schedule 01.12.2010


Ответы (1)


Как предыдущий сопровождающий и первоначальный автор поддержки Zend_XmlRpc i8, я должен признать, что для меня это выглядит как ошибка. В настоящее время нет способа заставить клиент XML/RPC добавить правильное объявление пространства имен.

person Lars Strojny    schedule 25.11.2012