Hi Stas,
Am Mittwoch, 11. Februar 2004 02:16 schrieb Stas Bekman:
So I think Apache::Request use a kind of ->can to check for a method before it forwards it. This makes the EazyLife option useless for me. ( Or I have to support a kind of autoloader or preloader for my class, but that make it useless too. )
I think not. headers_in called on $r should have AUTOLOADED Apache::RequestRec. Now since you call it on Apache::Request::PageKit for some reason it doesn't reach Apache::RequestRec::AUTOLOAD. That's probably a problem in either Apache::Request::PageKit or Apache::Request, with inheritance gone wrong.
Does it work for you if you use a pure modperl handler/registry script?
Yes, it works. But it turns out to be _very_ terrible in my case. I vote for removing the EazyLife patch or make it a config option ( in httpd.conf ).
Perhaps there are better solutions.
I encount zilions of ::DESTROY searches. But I can not install a ::DESTROY sub for every module, it may have it's own one.
That can be handled. As in: http://perl.apache.org/docs/2.0/api/ModPerl/MethodLookup.html#C_AUTOLOAD_
The biggest drawback for me is whenever inherence comes into play it wont work. Method_lookup is a hack. It is nice to have, but it whould much better if it is not needed at all.
Do you suggest that AUTOLOAD doesn't work with inheritance? Doesn't it call the right AUTOLOAD function?
The end of my testing was that I was forced to add a AUTOLOAD method for my class that fakes my environment and make a call to the RequestRec object to make it work.
The die statement in EasyLife.pm should include $AUTOLOAD and @_ for debugging, since $hint was most of the time ''.
Sure, that can be handled too.
__________________________________________________________________ Stas Bekman JAm_pH ------> Just Another mod_perl Hacker http://stason.org/ mod_perl Guide ---> http://perl.apache.org mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com http://modperlbook.org http://apache.org http://ticketmaster.com
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
