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

5372Interoperability between SOAP::Lite versions (anyURI problems)

Expand Messages
  • Alex Tang
    Apr 25, 2006
    • 0 Attachment
      Hi folks.

      We've got a cilent-server system with a couple hundred clients running
      various versions of SOAP::Lite in the 0.60 timeframe.

      We're trying to upgrade our server to the latest S::L (0.67).

      In one of the client-server calls, we send back a datastructure that
      looks like this:

      { code => 1,
      message => 'some message text',
      data => [ '<xml>',

      (a hashref where the 'data' element is an arrayref of strings. Each
      string is a line in an XML file).

      One problem i'm having is that I'm getting an error on the server that

      Error: soap:Client, Can't use string ("as_anyURI") as a subroutine ref
      while "strict refs" in use at /path/...

      I added a 'no strict "refs"' line, but then i started getting:

      Error: soap:Client, Type 'anyURI' can't be found in a schema
      class 'SOAP::Serializer

      I looked around on the archives and found various messages about the
      anyURI type autodetection thing that seems to be causing the problem.

      This message (http://groups.yahoo.com/group/soaplite/message/4703) and
      someone said that there was a bug that required the client and server
      to be the same version.

      I hope this isn't really the case because that'd mean we will never be
      able to upgrade S::L in our deployments since older versions of our
      product use S::L 0.60 and since we can't upgrade the server, new
      versions of the product will need to use 0.60 as well.

      Does anyone have any suggestions about how to make this work?