[Templates] problems with TT2 exception handling + CGI::Carp

tobias lasser lasser@in.tum.de
Wed, 20 Mar 2002 09:24:40 +0100


hello all!

i have problem with TT2 exception handling and CGI::Carp.

i use perl 5.000503 with TT2 2.06 and CGI::Carp 1.13 (supplied by CGI 
2.46). my template is generated with ERROR => "error.tpl".

there are the following scenarios:

1. use CGI::Carp qw(fatalsToBrowser);
any uncaught exception in the template is handled by CGI::Carp, and not 
as supposed by error.tpl.

2. use CGI::Carp qw(fatalsToBrowser);
an exception with surrounding TRY-CATCH-all block is caught correctly, 
but error.type is *always* "undef" and error.info is a Carp-message with 
timestamp and "type - info at <file> <line> etc". a type-specific CATCH 
doesnt work, i.e. [% TRY %] [% THROW foo %] [% CATCH foo %] [% END %]
is handled by CGI::Carp.

3. do not use CGI::Carp. TT2 exception handling works as expected.


so exception handling only works correct when not using CGI::Carp. but 
thats no option for my scripts, i need CGI::Carp.

is this a know problem? is there a solution/work-around? is my problem 
solved by a more recent CGI::Carp module?

please help me!

cu, tobias lasser