Bug 218403

Summary: Running SOAP Lite as "mod_soap" in Apache requires LWP/UserAgent.pm
Product: [Fedora] Fedora Reporter: Tom Cross <tomc>
Component: perl-SOAP-LiteAssignee: Mike McGrath <imlinux>
Status: CLOSED NOTABUG QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: 6CC: extras-qa
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-12-05 04:11:19 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Tom Cross 2006-12-05 03:45:20 UTC
Fresh install of Fedora Core 6.
Install mod_perl, perl-SOAP-Lite  (THANK YOU FOR MAKING THIS PACKAGE!!)

Setup SOAP::Lite according to documentation by adding this to Apache's conf:

<Location /soap>
        SetHandler perl-script
        PerlHandler Apache::SOAP
        PerlSetVar dispatch_to "/home/soap, MIME::Lite"
        PerlSetVar options "compress_threshold => 10000"
</Location>

Attempt to connect to simple "Hello World" SOAP server in /home/soap/ and I
receive this message in /var/log/httpd/error_log:

[Mon Dec 04 21:31:25 2006] [error] [client 204.107.148.116] failed to resolve
handler `Apache::SOAP': Can't locate LWP/UserAgent.pm in @INC (@INC contains:
/usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.7/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.6/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi
/usr/lib/perl5/site_perl/5.8.8 /usr/lib/perl5/site_perl/5.8.7
/usr/lib/perl5/site_perl/5.8.6 /usr/lib/perl5/site_perl/5.8.5
/usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.8/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.7/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.6/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.5/i386-linux-thread-multi
/usr/lib/perl5/vendor_perl/5.8.8 /usr/lib/perl5/vendor_perl/5.8.7
/usr/lib/perl5/vendor_perl/5.8.6 /usr/lib/perl5/vendor_perl/5.8.5
/usr/lib/perl5/vendor_perl /usr/lib/perl5/5.8.8/i386-linux-thread-multi
/usr/lib/perl5/5.8.8 . /etc/httpd) at
/usr/lib/perl5/vendor_perl/5.8.8/SOAP/Transport/HTTP.pm line 253.\nCompilation
failed in require at (eval 2) line 3.\n


Simple Server in /home/soap/Server.pm:

#!/usr/bin/perl -w

package Server;

sub testme ($$)
{
        my ($class, $teststring) = @_;

        return $teststring . " from the Server";
}

1;

###############################################

My test client:

#!/usr/bin/perl -w

use SOAP::Lite;

my $kendeco_soap = SOAP::Lite
        -> uri('urn:Server')
        -> proxy('http://kearney.kendeco.com/soap')
        -> on_fault(sub { my($soap, $res) = @_;
                die ref $res ? $res->faultstring : $soap->transport->status, "\n";
        });
$kendeco_soap->transport->timeout(150);


$res = $kendeco_soap->testme ("This is a test");
$r = $res->result;

print "R: $r\n";

############################################################

Comment 1 Tom Cross 2006-12-05 04:11:19 UTC
Never mind.. installing "perl-libwww-perl" solved *THIS* problem.