Arond has asked for the wisdom of the Perl Monks concerning the following question:

Hi, im from germany and i'm new in perl. I have Intershop (a CMS software) that uses perl 5.005_3 (Windows NT).

I have on other computer (Windows 2000) installed perl from activestate with soap light. There the perlscript i wrote to make a simple webservicecall runs perfectly.

But if i try to run it on the other computer (Windows NT)intershop/perl couldn't locate the soap light module. I have installed it from activestate by copy the SOAP folder of the /lib folder to them. Then the error disapears. I also have installed the LPW and HTTP Module from the activestate by copy the Folders of the /Lib folder.

But now this error apears when i try to start my script:

Can't locate object method "new" via package "LWP::UserAgent" at D:\Intershop\lib/Soap/Lite.pm line 1609. On this line in lite.pm is:

1606 sub access { require LWP::UserAgent;
1607 my $self = shift->new;
1608 my $url = shift || $self->schema || Carp::croak 'Nothing to access. URL is not specified';
1609 my $ua = LWP::UserAgent->new;
1610 my $resp = $ua->request(HTTP::Request->new(GET => $url));
1611 $resp->is_success ? $resp->content : Carp::croak $resp->status_line;
1612}

The binaries i use from activestate are the ppm ziparchives for activeperl 5xx.

I would be very very gratefully for all who could help me. Thanks

Replies are listed 'Best First'.
Re: How can i install soap-lite ?
by jhourcle (Prior) on May 13, 2005 at 20:14 UTC

    The problem isn't that SOAP::Lite isn't installed, it's that one of the SOAP::Lite dependancies isn't installed. In this particular case, you need to install LWP::UserAgent.

    SOAP::Lite uses a lot of other modules from CPAN, some of which are optional, and some aren't. (for instance, if you only use SOAP::Lite as a server, it never needs LWP::UserAgent).

    When you run the Makefile.PL for SOAP::Lite, it tells you which packages may be needed. Even if you're installing from PPM, you may want to take a look at the SOAP::Lite tarball, so you can see what it may like to have.

      Thank you for the answer. But i have installed the LWP Module that ist part of the libwww-perl on active state. I have unziped the file by copying the LPW folder in the zip archive into my /lib folder where the other Modules are.
      The file UserAgent.pm in the folder LWP does exist. Im copying the Folder only because i can't start the ppm manager on the computer which needs the LPW Module because it is in the intranet. But i think, that copying the Modulefolder would be enough or i'am wrong ?

        You should always run the installer, rather than just copying files over. The installer may compile parts of itself (anything with .xs files), configure other things (like setting up libnet.cfg, for Bundle::libnet, or add more than just perl modules (LWP has a few executables to call it from the command line).

        Most important, however, is the results of 'make test', which will help you to pinpoint where there are going to be problems.

        Most likely, it's just a matter of the LWP files not being in the right place for perl to find ... if it's not in the same place as where you placed SOAP::Lite, you may need to do a 'use lib' to tell perl where to look for the other modules.