Loading ...
Sorry, an error occurred while loading the content.

Use of inherited AUTOLOAD for non-method SOAP::Serializer::as_base64Binary()

Expand Messages
  • Julian
    Hi all, I m having an issue and it may be a simple thing to resolve it. When a SOAP::Lite server returns a hash array to a Python client, and one of the hash
    Message 1 of 2 , Nov 20, 2009
    View Source
    • 0 Attachment
      Hi all,

      I'm having an issue and it may be a simple thing to resolve it.

      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_mess
      ageResponse 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?

      Thanks!
    • Martin Busik
      Hi, ... If this is a server message, then it should be returned, whatever client sends the request. I suppose, perl and python do not generate the same
      Message 2 of 2 , Nov 26, 2009
      View Source
      • 0 Attachment
        Hi,

        > 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:

        If this is a server message, then it should be returned, whatever client
        sends the request. I suppose, perl and python do not generate the same
        request.

        You might try SoapUI (www.soapui.com) to find out what part of a request
        causes the problem.

        > 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.

        The code causing the problem has to do with the "autotype" feature.

        Cheers,
        Martin
      Your message has been successfully submitted and would be delivered to recipients shortly.