[Israel.pm] help with "use base"
migo at homemail.com
Mon Aug 9 03:35:16 PDT 2004
On 09 Aug 2004 06:48:29 +0300, Scott Weisman wrote:
> In Perl it is perfectly acceptable to create an instance of one class in
> another, and since I've pre-loaded the modules in my startup.pl, there
> shouldn't be a problem. Where is the circular reference if I've
> preloaded the module? Besides, as I've said above, it works on my own
> box. I'm not trying to be repetitive here.
I can't say anything about startup.pl (you didn't show it, as well as
the Apache config that uses it). But generally speaking, you can't call
methods of class A without first loading A, that you do in your code.
> I just want to emphasize I'm
> using tested, working code that breaks for some reason on another box.
Your file stated in the error message has one "use" missing, it is a bug.
The problem will be solved if you add this "use" line.
> I did just check, and for some reason @cmf::control::web::front::ISA is
> NOT set, even though it should be, regardless of whether I do 'use base'
> or the old method of "use cmf::control::web; our @ISA =
> qw(cmf::control::web);". It doesn't make sense to me, but perhaps
> something in Red Hat does not like pre-loading modules?
If you don't load cmf::control::web::front class, then its code is never
executed and it is right that @cmf::control::web::front::ISA is not set.
It is possible that startup.pl is misconfigured on the new system, this
script previously served as a workaround for the bug in your code.
perl -e 'print+chr(64+hex)for+split//,d9b815c07f9b8d1e'
More information about the Perl