package myTest::Index; use strict; use DBI; use base 'CGI::Application'; use CGI::Application::Session; use Data::Dumper; .... .... sub home { # $self->start_mode('home'); my $self = shift; my $tmpl = $self->load_tmpl('index.tmpl'); my $session = $self->session; my $data = $session->param_hashref(); use myTest::module1; my $moduleRef = new myTest::module1; $moduleRef->add_item(); # session changes in myTest::module1 here are not reflected in # main session $session->param("key1","value1"); # Works as expected $tmpl->param(DATA => Dumper($data)); return $tmpl->output; }