#171 Use of inherited AUTOLOAD for non-method SOAP::Serializer::a

open
Byrne Reese
Encoding (11)
5
2009-11-20
2009-11-20
No

When a SOAP::Lite server returns a hash array to a Python client, and one of the hash fields is a large chunk of binary data (actually the contents of a .wav file), the following is printed on stdout:

Use of inherited AUTOLOAD for non-method SOAP::Serializer::as_base64Binary()
is deprecated at /usr/lib/perl5/vendor_perl/5.8.8/SOAP/Lite.pm line 1167.

When using a Perl client, it works correctly. Here's the SOAP request from the Python client:

<?xml version="1.0" encoding="UTF-8"?>
<SOAP-ENV:Envelope SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" [^] xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" [^] xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" [^] xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" [^] xmlns:xsd="http://www.w3.org/1999/XMLSchema"> [^]
<SOAP-ENV:Body>
<ns1:get_message xmlns:ns1="Integrics/Enswitch/API" SOAP-ENC:root="1">
<v1 xsi:type="xsd:string">username</v1>
<v2 xsi:type="xsd:string">password</v2>
<v3 xsi:type="xsd:string">1234</v3>
<v4 xsi:type="xsd:string">INBOX</v4>
<v5 xsi:type="xsd:string">voicemail</v5>
<v6 xsi:type="xsd:string">msg0000</v6>
</ns1:get_message>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

and here's what the client is reporting returned:

<?xml version="1.0" encoding="UTF-8"?><soap:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" [^] xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" [^] xmlns:xsd="http://www.w3.org/1999/XMLSchema" [^] soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" [^] xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><get_messageResponse [^] xmlns="Integrics/Enswitch/API"><gensym><name xsi:type="xsd:string">msg0000.wav</name><mimetype xsi:type="xsd:string">audio/x-wav</mimetype></gensym></get_messageResponse></soap:Body></soap:Envelope>

but there should also be a <data></data> field returned with about 500KB of data. SOAP::Lite is 0.710.10, Perl is 5.8.8, the server OS is Centos 4.8.

Any ideas on what could be wrong?

Discussion