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

SOAP::Lite client for Axis WS

Expand Messages
  • soapsod
    Hello, perhaps I should mention that I m not a web developer and only preoccupy myself with the Perl SOAP::Lite toolkit (at least so far) because I was given
    Message 1 of 1 , Jun 18, 2007

      perhaps I should mention that I'm not a web developer and only
      preoccupy myself with the Perl SOAP::Lite toolkit (at least so far)
      because I was given the task to write a client for an Axis SOAP server.
      As I am somewhat restricted to using Perl
      (1st because this language I feel most comfortable with for getting a
      nasty job quickly done, and 2nd because the client should run on an
      hpux server where there isn't much choice for other bloating SOAP
      SOAP::Lite appeared as a natural option.

      Because I was provided with a WSDL file of the Axis WS
      I prematurely thought this to be a fairly easy job by simply passing
      the service() method the local location of my WSDL file's copy.

      This soon proved to be a big mistake.

      First of all my SOAP::Lite object simply rebuked my WSDL file and died.

      Then it took me a whole day to merely tinker up some lousy SOAP
      security header that the damned Axis server would accept for
      authentication of my client for a rediculous GetVersionRequest.
      I only managed this by some wild trial and error of nested and ugly
      SOAP::Data constructs, with repetitive tcpdumps of the client server

      Here comes my first question.
      Is there any easier way to get a dump of the serialized XML displayed,
      perhaps by some custom accessor or display method like known from LWP
      than the circuitous packet sniffing?
      I haven't found mentioning of such in the PODs of SOAP::Lite, nor
      SOAP::Data, nor SOAP::Serializer.
      In the Perl debugger I could only realize various SOAP::Data objrefs
      where I rather would have liked to have seen some XML as would be sent
      over the wire.

      Now, I am despairing over how to correctly (for the Axis server)
      serialize the aggregated object that I am supposed to pass as
      parameters to the remote method calls that I am really interested in.

      All the sample codes that I have found in various PODs and Howtos only
      relate to rather trivial services (e.g. like those temperature
      conversions) or concocted services with the emphasis rather on a Perl
      SOAP::Lite server if any convoluted data structures are involved at all.

      Are there any recipes how to "manually" translate the interface of the
      WSDL file into valid XML through SOAP::Data or similar modules?
    Your message has been successfully submitted and would be delivered to recipients shortly.