I 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>
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;
}
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;
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.