XmlRpcResponse.unmarshal() incorrectly decodes untyped value
Brought to you by:
cadu-goncalves
mimic.js version 2.3, class XmlRpcResponse, method unmarshal incorrectly decodes untyped value.
If the called procedure returns one untyped scalar, e.g.
<methodResponse>
<params>
<param><value>2.33.01.alpha</value></param>
</params>
</methodResponse>
unmarshal() returns undefined value instead of "2.33.01.alpha"
Similarly, if the response is array of untyped values
<array><data><value>...</value><value>...</value></data></array>
then unmarshal() returns empty array instead of array of values
This issue is invalid, because Mimic was created to be compliant with XML-RPC specification, it will not unmarshall invalid responses like this particular one.
For more information about XML-RPC protocol specification http://xmlrpc.scripting.com/spec.html
Regards.
Last edit: Carlos Eduardo Goncalves 2013-10-04
Specification allow untyped values and interpret it as string:
"If no type is indicated, the type is string."