in reply to Re^3: Mason Interp Perl string
in thread Mason Interp Perl string
Good idea...I like it...
But, I'm not familiar with "use parent", and apparently neither is my server (this server is on Perl 5.8.8). I also tried "use base" and a plain old ISA on it, but they didn't work either--although they errored in a different way. :)
package Mason::MyDynHandler; our @ISA = qw(HTML::Mason::ApacheHandler); use HTML::Mason::ApacheHandler; sub handler { my($r) = @_; my $output = '% print STDERR "$m->session\n"; \n alert("foo");'; my $ah = HTML::Mason::ApacheHandler->handler($r); my $mi = $ah->interp; my $c = $mi->make_component(comp_source => $output); my $realOutput = $mi->exec($c); print $realOutput; return OK; }
With errors:
[Thu Feb 9 17:28:39 2012] [error] [Mason] File does not exist: /somep +ath/foo.dynjs [Thu Feb 9 17:28:39 2012] [error] Can't call method "interp" without +a package or object reference at ../Mason/MyDynHandler.pm line 43.\n
the file does not exist is because foo.dynjs is still a virtual file. And line 43 is "my $mi = $ah->interp;". I can move the problem by replacing $mi with $ah, but it isn't set up correctly, clearly.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^5: Mason Interp Perl string
by Anonymous Monk on Feb 09, 2012 at 23:52 UTC | |
by SleepyJay (Beadle) on Feb 10, 2012 at 21:51 UTC |