NAME¶
Embperl::Features - Main features of Embperl 2.0
Main features of Embperl 2.0¶
- •
- Embperl facilitates embedding Perl code into HTML/XML or
other text documents. Perl code is evaluated at the server side and the
result is sent to the browser. All available Perl modules can be used
without any restriction.
- •
- Allows one to build Web sites out of small reusable
components in an object-oriented way. Components can call and/or embed
each other and inherit from other objects.
- •
- Standard layout of a web-site site can be defined once and
the content can be dynamically generated by these components based on the
uri. The documents need only contain the variable portions but not the
common items which define the layout like headers/footers or navigation
bars which normally form the template. Also these common elements can be
overwritten in each sub-directory.
- •
- Embperl 2.0 thus facilitates separating code, layout and
creating MVC (Model-View-Controller) applications. Control logic can be
moved into an application object, which controls further execution of the
request, while the actual pages are containing the display code. Simple
applications can still embed all the code in the pages.
- •
- Source-code for each component can come from a different
source, e.g. from file, memory or sub-request which allows one to act on
the output from another Apache application like PHP, JSP, CGI Script
etc.
- •
- Each component can be in a different source format (e.g.
HTML, WML, XML, POD, ...) and can be transformed to other output formats,
say by using via XSLT.
- •
- Supports one or more scripting syntax using Embperl, ASP,
Text, Perl and others.
- •
- Output generation is divided into small steps where each is
processed by a plugable provider. The interaction of the providers can be
individually configured for each component via recipes.
- •
- Supports caching of intermediate results and output.
- •
- Embperl encompasses several features that ease the task of
dynamic web-site content generation, including dynamic-tables,
form-field-processing, escaping/unescaping, etc.
- •
- Contains a module for easy form input validation, which is
able to validate user input at the server side and on the client side by
one definition of rules.
- •
- Handles per-user and per-module persistent session
requiring only storage and retrieval of the session data from a special
hash.
- •
- UTF-8 Support (honours Perl's internal UTF-8 flag during
in- and output)
- •
- Offers flexible configuration options to suite individual
tastes and needs.
- •
- Fully integrated into Apache and mod_perl to acheive the
best performance. Can also run as a free standing CGI-script, off-line or
can be called from another Perl program.
- •
- The Perl module DBIx::Recordset offers high level, easy to
use database access for Embperl.
- •
- Embperl::Mail enables redirecting the result output
to a mail-recipient.
- •
- Embperl::Inline allows one to embedd Embperl code in
normal Perl code