Fixed. I forgot to print the template->output. print $template->output;
On Wed, 2008-03-12 at 23:02 +0000, xyon wrote: > Hey everyone, > > Firstly, I apologize I sent the previous email under an incorrect subject > line. > > I am working on my first Object-Oriented project, and have hit a slight > snag. I am using HTML::Template to output within the View module, but it > never outputs. I don't see any errors in the logs, I just get a blank > page. Below is pertinent information including a test script with its > output: > > > > OS Info: > ---------------------------------------------------- > CentOS release 4.6 (Final) > ---------------------------------------------------- > > > > Package info: > ---------------------------------------------------- > perl-5.8.8-11 > perl-HTML-Template-2.9-1 > httpd-2.0.59-1.el4s1.10.el4.centos > mod_perl-2.0.3-1.el4s1.3 > ---------------------------------------------------- > > > > /home/perl/Myserver/View.pm > ---------------------------------------------------- > package Myserver::View; > > #Setup some essentials > use strict; #strict tolerance for code > use Carp; #debugging > use diagnostics; #more debugging > use warnings; #more debugging > > #Loadup some needed functions > use HTML::Template; > > sub new { > my $self = shift; > return $self; > } > > sub mainpage { > my $self = shift; > my $template = HTML::Template->new( filename => > '/home/Perl/tmpl/mainpage.tmpl', > cache => 1, > debug => 1, > stack_debug => 1 ); > print "Content-Type: text/html\n\n"; > $template->output; > return $self; > } > > 1; > ---------------------------------------------------- > > > > /home/Perl/tests/View_mainpage.pl > ---------------------------------------------------- > #!/usr/bin/perl -w > > # Test printing of the main page > print "Main Page.."; > > #Let's load the view module > use lib "../"; > use Myserver::View; > #Now let's load some things that are very handy > use strict; #strict tolerance for code > use Carp; #debugging > use warnings; #more debugging > use diagnostics; #even more debugging > > # Let's create an object > my $view = Myserver::View->new; > > # Now, let's tell View to display the main page > $view->mainpage; > > print ".OK"; > > 1; > ---------------------------------------------------- > > > > /home/Perl/tmpl/mainpage.tmpl: > ---------------------------------------------------- > <html><body bgcolor="#FF00FF">Test!</body></html> > ---------------------------------------------------- > > > > Output with debugging on (as above): > ---------------------------------------------------- > $ tests/View_mainpage.pl > ### HTML::Template Debug ### In _parse: > ### HTML::Template _param Stack Dump ### > > $VAR1 = [ > \'<html><body bgcolor="#FF00FF">Test!</body></html> > ' > ]; > > Main Page..Content-Type: text/html > > ### HTML::Template Debug ### In output > ### HTML::Template output Stack Dump ### > > $VAR1 = [ > \'<html><body bgcolor="#FF00FF">Test!</body></html> > ' > ]; > > .OK > ---------------------------------------------------- > > > > Output without debugging: > ---------------------------------------------------- > $ tests/View_mainpage.pl > Main Page..Content-Type: text/html > > .OK > ---------------------------------------------------- > > >