jeffthewookiee has asked for the wisdom of the Perl Monks concerning the following question:
I want to access new(), debug(), info(), warn(), and error() in an autodispatch, OO-manner. Here's my client(domain names changed to protect the innocent):<Location /soap> SetHandler perl-script PerlHandler Apache2::SOAP PerlSetVar dispatch_to "OO::Logger" </Location>
Running the client results in a SOAP error:use SOAP::Lite +autodispatch => uri => 'http://super_secret.com/OO/Logger', proxy => 'http://super_secret.com/soap', on_fault => \&handle_error; my $logger = OO::Logger -> new("","","NO argument"); $logger -> debug("This is a debugggg...\n"); sub handle_error { print "SOAP error:\n"; my($soap, $res) = @_; die ref $res ? $res->faultstring : $soap->transport->status, +"\n"; }
This is especially curious to me as the call to new() succeeds and Data::Dumper reveals it is in fact an initialized Logger object. Why can't it locate the rest of the class's methods?Failed to locate method (debug) in class (OO::Logger) at /usr/lib/per +l5/site_perl/5.8.8/SOAP/Lite.pm line 2586.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re: SOAP::Lite and mod_perl
by shmem (Chancellor) on Dec 10, 2007 at 23:28 UTC | |
by jeffthewookiee (Sexton) on Dec 11, 2007 at 15:43 UTC |