I used CGI::Builder::CgiAppAPI to convert an intranet application (43 runmodes), that now is working fine under Apache::CGI::Builder: the process was quite simple but very annoying.
The good things are:
- almost 90% of conversion changes were just search and replace in the application module
- I can take off 20% of the old code not needed anymore
- I can split the module into more useful super classes (really rehusable) using overrunning
- Apache::CGI::Builder is really nice
The bad things are:
- I had to run all the run modes, one by one, to make sure I didn't forget anything. The hints that CGI::Builder::CgiAppAPI gives you are just run-time hints. I don't know if it would be possible but I'd like to have compile-time hints or at least some automatic-all-run-modes checking to avoid to do it manually.
- HTML::Template is my favourite templating system and it is supported by CGI::Builder::HTMLtmpl (with even more encapsulation than in CGI::Application), but it appears to be limited comparing it with CGI::Builder::Magic. Since the author is the same (for Template::Magic and CGI::Builder), I have the insane suspect that he did it intentionally :-@