http://qs1969.pair.com?node_id=587742


in reply to Re: Getting soap client/server to work
in thread Getting soap client/server to work

Thanks!

Looks like I'm getting closer :) A 500 error from apache. hmmm. This should be reported in the /var/log/httpd/error_log but isn't.

Jason L. Froebe

Team Sybase member

No one has seen what you have seen, and until that happens, we're all going to think that you're nuts. - Jack O'Neil, Stargate SG-1

Replies are listed 'Best First'.
Re^3: Getting soap client/server to work
by jfroebe (Parson) on Dec 04, 2006 at 21:41 UTC

    Figured it out! The URI was wrong! :)

    Working:
    print SOAP::Lite ->uri('http://localhost/Demo') ->proxy('http://localhost/cgi-bin/soap/hibye.cgi') ->hi() ->result;

    Doesn't work:

    print SOAP::Lite ->uri('http://localhost/cgi-bin/soap/Demo') ->proxy('http://localhost/cgi-bin/soap/hibye.cgi') ->hi() ->result;

    Jason L. Froebe

    Team Sybase member

    No one has seen what you have seen, and until that happens, we're all going to think that you're nuts. - Jack O'Neil, Stargate SG-1

      Yeah the uri actually becomes the namespace for the content of the SOAP Body element. SOAP::Lite uses this to determine the module to use for an rpc/encoded request. So with your original attempt would try to load a module like cgi-bin::soap::Demo. The namespace URI doesn't have to be a URI of an actual resource and shouldn't be confused with one. This is one reason why I tend to use a URI of the form urn:Demo (which should work in your case, avoiding using the http scheme reduces the potential for confusion IMO,

      /J\

        Now it becomes clear :) I was rather confused with the use of the URI in the code.

        Jason L. Froebe

        Team Sybase member

        No one has seen what you have seen, and until that happens, we're all going to think that you're nuts. - Jack O'Neil, Stargate SG-1