开发者

PHP Zend XML-RPC client - "Unknown type: i8" when making a request with Zend_Crypt_Math_BigInteger?

开发者 https://www.devze.com 2022-12-23 16:50 出处:网络
I am using Zend 1.10\'s XML-RPC client library to make XML-RPC requests to another server. One of the methods I have to call uses a i8 (a.k.a. ex:i8) type, i.e. extended big integer. This is supported

I am using Zend 1.10's XML-RPC client library to make XML-RPC requests to another server. One of the methods I have to call uses a i8 (a.k.a. ex:i8) type, i.e. extended big integer. This is supported in Zend (cf. http://framework.zend.com/apidoc/1.10/Zend_XmlRpc/Value/Zend_XmlRpc_Value_BigInteger.html). However whenever I try to make a few calls to it, I get an exception (I think before it contacts the server).

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}

By using getLastRequest() on the client object I can see that the XML it wants to send is this:

?xml version="1.0" encoding="UTF-8开发者_高级运维"?>
<methodCall><methodName>methodCall</methodName><params><param/><param/></params></methodCall>

It looks like Zend isn't adding the namespaces to the XML. How can I get around this? How do I make a XML-RPC method call with i8/ex:i8/BigInteger parameter?


As the previous maintainer and original author of the Zend_XmlRpc i8 support I have to admit this looks like a bug to me. There is currently no way to tell the XML/RPC client to work add the correct namespace declaration.

0

精彩评论

暂无评论...
验证码 换一张
取 消