Tyler Bird wrote the following on 2/4/2005 3:07 PM :

Are you using Apache::Registry or another handler? Perl scripts should run without any modifications with under
mod_perl/Apache::Registry
if it's setup right. What are you trying to do?


Try using perl directly.

I personally only have modules and use "use" instead of require.
I then export symbols into the calling packages namespace using
exporter.
You can make your module like this

-- start file ---
# Package Declaration
package yourPackageOrLibraryName;

# Exporter Module used to export names from this module
use Exporter;

#--------------------------------------------------------------------
# Inherit from Exporter module
# to put symbols in calling packages
# namespace, put symbols ( names of functions ) in @EXPORT array
# you can put functions in the @EXPORT_OK array but you have
# to specify explicitly those routines with the use statment in the
# calling package
#--------------------------------------------------------------------

# Here you put your inherted modules in the @ISA array
# We need to Inherted from Exporter to easily export symbols @ISA=('Exporter');


# @EXPORT_OK array allows us to selectively specify in the use # which symbols to import
# for example in the ::main package
# use yourPackageOrLibraryName('func1', 'func2');
# @EXPORT will export all symbols when you in the using module # do not include any symbols for example
# use yourPackageOrLibraryName;


@EXPORT = ('parse', 'header', 'end_html', 'html_head', 'side_bar');

# put subroutines & other symbols below

-- end file --

Or do OO library

#--------------------------------------------------------------------------------------------------------------
package myPackage;
#--------------------------------------------------------------------------------------------------------------
use DBI;
use cgiutils;

#--------------------------------------------------------------------------------------------------------------
# Constructor
#--------------------------------------------------------------------------------------------------------------
sub new
{
my($pkg, $name, $age) = @_;

# must return blessed refrence
return  bless(  { "field1" => "value" }, $pkg );

}

#--------------------------------------------------------------------------------------------------------------
# Destructor
#--------------------------------------------------------------------------------------------------------------
sub DESTROY
{
my $obj = shift;
$obj->{"dbh"}->dissconnect();   
}

#--------------------------------------------------------------------------------------------------------------
sub foo
{       
}

--- snip ---

then use it in another module like the main module like so

use MyPackage;

$obj = new MyPackage();


Thanks for the example Tyler.  I will try this!
.===================================.
| This has been a P.L.U.G. mailing. |
|      Don't Fear the Penguin.      |
|  IRC: #utah at irc.freenode.net   |
`==================================='

Reply via email to