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
> ----------------------------------------------------
>
>
>