######################################################################### ## CGI::Application - Framework for building reusable web-applications ## ######################################################################### CGI::Application is intended to make it easier to create sophisticated, reusable web-based applications. This module implements a methodology which, if followed, will make your web software easier to design, easier to document, easier to write, and easier to evolve. Download site for CGI::Application: http://search.cpan.org/dist/CGI-Application/ CHANGES SINCE VERSION 3.31: This release adds a major new feature of special interest to plugin authors: 'hooks'. This concept helps to create plugins that are more powerful and simpler to use for end users. See the documentation on writing plugins for details. Special thanks to Cees Hek and Michael Graham for their effort to develop and refine the hook system. Since the last major release, there has been an explosion of new plugins developed. This is an incomplete list of modules below the 'CGI::Application::Plugin' namespace. Expect more to be added and updated soon with the advent of the hook system: ::AnyTemplate - Use any templating system with a unified interface ::Apache - Use Apache::* modules without interference ::AutoRunmode - Automatically register runmodes ::ConfigAuto - Integration with Config::Auto ::Config::Context - Integration with Config::Context ::Config::General - Integration with Config::General ::Config::Simple - Integration with Config::Simple ::CompressGzip - Add Gzip compression ::DBH - Integration with DBI ::LogDispatch - Integration with Log::Dispatch ::Session - Integration with CGI::Session ::Stream - Help stream files to the browser ::TT - Use Template::Toolkit as an alternative to HTML::Template ::ValidateRM - Integration with Data::FormValidator and HTML::FillInForm The following additional changes are also present in this release: - Enhanced tests and documentation for error_mode(). (Rob Kinyon). - Clarified Plug-in documentation (Timothy Appnel) - Avoid some warnings when getting run mode from PATH_INFO (Emanuele Zeppieri) - Use query() object to get PATH_INFO, to workaround bug in IIS web server. (Mark Stosberg) - Documented return value of header_props() Read the article "Using CGI::Application" on Perl.com for an overview of this module and its usage: http://www.perl.com/pub/a/2001/06/05/cgi.html HOW DO I INSTALL IT? To install this module, cd to the directory that contains this README file and type the following: perl Makefile.PL make make test make install CGI::Application builds on standard, non-proprietary technologies and techniques, such as the Common Gateway Interface and Lincoln D. Stein's excellent CGI.pm module. CGI::Application judiciously avoids employing technologies and techniques which would bind a developer to any one set of tools, operating system or web server. The guiding philosophy behind CGI::Application is that a web-based application can be organized into a specific set of "Run Modes." Each Run Mode is roughly analogous to a single screen (a form, some output, etc). All the Run Modes are managed by a single "Application Module" which is a Perl module. In your web server's document space there is an "Instance Script" which is called by the web server as a CGI (or an Apache::Registry script if you're using Apache + mod_perl). CGI::Application is an Object-Oriented Perl module which implements an Abstract Class. It is not intended that this package be instantiated directly. Instead, it is intended that your Application Module will be implemented as a Sub-Class of CGI::Application. If you have any questions, comments, bug reports or feature suggestions, post them to the support mailing list! To join the mailing list, simply send a blank message to "cgiapp-subscribe@lists.erlbaum.net".