in reply to SOAP::Lite and custom envelopes

Agreed.   It is most likely that a recent version of SOAP::Lite will produce or can be quickly made to produce the desired output.   (It is a very mature package.)   But of course, your only alternative otherwise will be to, “When in Rome, do...”   It never hurts to ask the vendor what Perl package they use, because the chances are excellent that they are using Perl on their side.   I asked that question of Ingram and in a matter of fifteen minutes got an actual code example, sanitized straight from their receiving system that my code would be talking to.   Schweet!

Replies are listed 'Best First'.
Re^2: SOAP::Lite and custom envelopes
by glasswalk3r (Friar) on Mar 17, 2012 at 17:50 UTC

    I agree with the observation, but that just not defeats the usage of a webservice? I mean, if I need to talk with the third party person the implementation details of their webservice, why use SOAP at all? Should the differences in the envelopes have any importance?

    I'm saying that because sometime ago I tried to make a SOAP::Lite SOAP service work with a .Net client and it was a real pain to do it.

    Alceu Rodrigues de Freitas Junior
    ---------------------------------
    "You have enemies? Good. That means you've stood up for something, sometime in your life." - Sir Winston Churchill

      Yes, it is a .Net webservice.

      They offer as well a SOAP client written in Java which can be used somehow with Java.pm but we don't want to use Java in our production system.

      After unsuccessfully trying to install SOAP::Simple I used the lowlevel way: LWP::UserAgent for the request and pattern matching for the response parsing.

      Maybe not the classical way but in this case it was the fastest.

      Anyway, thanks for your help, everybody.

        After unsuccessfully trying to install SOAP::Simple

        cpanp i BERLE/SOAP-Simple-0.00_03.tar.gz

        Maybe not the classical way but in this case it was the fastest.

        As long as you and your maintenance programmer are satisfied with it :)

        When I tried to use SOAP::Lite with a .Net class, I spent a lot of time trying to make the .Net understand the service's WSDL (that I had to do basically manually). It didn't work.

        Then I tried to reverse the order, making a Perl SOAP client for the .Net service. Again SOAP::Lite didn't help because I couldn't read the WSDL and create a stub.

        That might have changed by now, but SOAP::Lite cannot work with SOAP document style, which is the defaul option for .Net (it uses RPC style).

        XML::Compile::SOAP::Client worked much better in this case.

        Alceu Rodrigues de Freitas Junior
        ---------------------------------
        "You have enemies? Good. That means you've stood up for something, sometime in your life." - Sir Winston Churchill
        Solved: verify end server is functioning and connectivity before trying to learn perl's adaption for it.