>-----Message d'origine----- >De : Ronald J Kimball [mailto:[email protected]] >Envoyé : jeudi, 7. avril 2011 20:11 >À : The elegant MVC web framework >Objet : [Catalyst] Fatal errors in chained actions > >I was surprised to discover that when a chained action throws a fatal >error, Catalyst continues executing the remaining actions in the >chain. Personally, I had assumed that each action in the chain could >depend on the preceeding actions having been executed successfully.
Hi Ronald, This point was discussed in 2008 : see http://lists.scsys.co.uk/pipermail/catalyst/2008-March/017748.html and the rest of the thread. At that time I also had some IRC chats or private e-mails with Matt Trout about this point; he of course suggested me to write a patch ... which I never did ! The problem we discussed was that a change of behaviour would perhaps break some stuff in existing applications; so what is probably needed is a parameter somewhere in Catalyst config to tune the error handling for chained actions. For the moment, what I do in my applications is quite bad : load Catalyst::ActionChain and forcefully overwrite the dispatch() method, applying the code change proposed in http://lists.scsys.co.uk/pipermail/catalyst/2008-March/017789.html I really need that hack because, as you mention, if a database call fails in the first URL segment, we better stop there instead of applying the following segments. So maybe it's time to really think about proposing a patch to Catalyst ... Best regards, Laurent Dami _______________________________________________ List: [email protected] Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst Searchable archive: http://www.mail-archive.com/[email protected]/ Dev site: http://dev.catalyst.perl.org/
