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

Re: [soaplite] SOAP::Lite Dispatching problem

Expand Messages
  • Paul Kulchenko
    Don t see anything wrong in your code. You get 405 in two cases: you send a POST request (as your client does) to a URL with a regular page; or you send a GET
    Message 1 of 3 , May 4, 2004
    • 0 Attachment
      Don't see anything wrong in your code.

      You get 405 in two cases: you send a POST request (as your client
      does) to a URL with a regular page; or you send a GET request to a
      SOAP::Lite-enabled endpoint (which accepts POSTs).

      First thing, I would turn debugging on to see what's on wire:

      use SOAP::Lite
      on_debug => sub{print@_};

      Then, I would try to access your endpoint from a regular browser (you
      should get 405 if you have properly installed/configured Apache::SOAP
      handler).

      If nothing helps, I would send one more message to this list and
      include debug output.

      Best wishes, Paul.

      --- rcalosso <rcalosso@...> wrote:
      > am trying to get my Apache server to dispatch SOAP requests per
      > some examples on the SOAP::Lite docs with not much success. I am
      > running on RH9 with Apache 2.0.49, mod_perl 1.99_13 built on perl
      > v5.8.3 all built from source locally.
      > I added the following location directive to httpd.conf
      >
      > <Location /Broadline/SOAP>
      > SetHandler perl-script
      > PerlHandler Apache::SOAP
      > PerlSetVar dispatch_to "DLManager"
      > </Location>
      >
      > If have the following as DLManager.pm in the perl INC path:
      > ########
      > package DLManager;
      >
      > sub sayHello {
      > shift;
      > return "Hello" . shift;
      > }
      >
      > 1;
      > #########
      >
      > and am using the following simple client to execute it.
      > #!/usr/local/bin/perl -w
      >
      > use strict;
      >
      > use SOAP::Lite;
      >
      > my $Name = shift;
      > print "\nCalling Service\n";
      > print SOAP::Lite
      > ->uri('http://localhost/DLManager')
      > ->proxy('http://localhost/Broadline/SOAP')
      > ->sayHello($Name)
      > ->result;
      >
      > When I execute the client program I get
      > 405 Method not allowed at /hello.pl line 11
      > error and no error messages in the error or access log files.
      > Can someone shed some light on this for me? I read all the docs I
      > could find regarding this on Google and SOAPLite.org and still have
      >
      > not been able to resolve the problem.
      >
      >
      >
      > ------------------------ Yahoo! Groups Sponsor
      >
      >
      > Yahoo! Groups Links
      >
      >
      >
      >
      >
    • rcalosso
      In further reviewing my errorlogs I think I narrowsed it down to the patch I tried to apply to SOAP::Transport::HTTP to work in Apache 2. Can someone point me
      Message 2 of 3 , May 5, 2004
      • 0 Attachment
        In further reviewing my errorlogs I think I narrowsed it down to the
        patch I tried to apply to SOAP::Transport::HTTP to work in Apache
        2. Can someone point me to the "official" patch(es) needed to make
        SOAP::Lite and Apache::SOAP work with Apache2 and mode_perl 1.99.xx

        --- In soaplite@yahoogroups.com, Paul Kulchenko <paulclinger@y...>
        wrote:
        > Don't see anything wrong in your code.
        >
        > You get 405 in two cases: you send a POST request (as your client
        > does) to a URL with a regular page; or you send a GET request to a
        > SOAP::Lite-enabled endpoint (which accepts POSTs).
        >
        > First thing, I would turn debugging on to see what's on wire:
        >
        > use SOAP::Lite
        > on_debug => sub{print@_};
        >
        > Then, I would try to access your endpoint from a regular browser
        (you
        > should get 405 if you have properly installed/configured
        Apache::SOAP
        > handler).
        >
        > If nothing helps, I would send one more message to this list and
        > include debug output.
        >
        > Best wishes, Paul.
        >
        > --- rcalosso <rcalosso@y...> wrote:
        > > am trying to get my Apache server to dispatch SOAP requests per
        > > some examples on the SOAP::Lite docs with not much success. I
        am
        > > running on RH9 with Apache 2.0.49, mod_perl 1.99_13 built on
        perl
        > > v5.8.3 all built from source locally.
        > > I added the following location directive to httpd.conf
        > >
        > > <Location /Broadline/SOAP>
        > > SetHandler perl-script
        > > PerlHandler Apache::SOAP
        > > PerlSetVar dispatch_to "DLManager"
        > > </Location>
        > >
        > > If have the following as DLManager.pm in the perl INC path:
        > > ########
        > > package DLManager;
        > >
        > > sub sayHello {
        > > shift;
        > > return "Hello" . shift;
        > > }
        > >
        > > 1;
        > > #########
        > >
        > > and am using the following simple client to execute it.
        > > #!/usr/local/bin/perl -w
        > >
        > > use strict;
        > >
        > > use SOAP::Lite;
        > >
        > > my $Name = shift;
        > > print "\nCalling Service\n";
        > > print SOAP::Lite
        > > ->uri('http://localhost/DLManager')
        > > ->proxy('http://localhost/Broadline/SOAP')
        > > ->sayHello($Name)
        > > ->result;
        > >
        > > When I execute the client program I get
        > > 405 Method not allowed at /hello.pl line 11
        > > error and no error messages in the error or access log files.
        > > Can someone shed some light on this for me? I read all the docs
        I
        > > could find regarding this on Google and SOAPLite.org and still
        have
        > >
        > > not been able to resolve the problem.
        > >
        > >
        > >
        > > ------------------------ Yahoo! Groups Sponsor
        > >
        > >
        > > Yahoo! Groups Links
        > >
        > >
        > >
        > >
        > >
      Your message has been successfully submitted and would be delivered to recipients shortly.