...
components in ways that match your intentions.
In this chapter we'll discuss four of the persistent objects in the Mason
framework: the Interpreter, Resolver, Lexer, and Compiler. These objects ... so on.
The Lexer is responsible for actually processing the component source code
and finding the Mason directives within it. It interacts quite closely...
... users is the following, put in the httpd.conf
for the site:
PerlModule HTML: :Mason: :ApacheHandler
<LocationMatch "\ .html$ ">
SetHandler perl- script
PerlHandler HTML: :Mason: :ApacheHandler ... the CPAN.pm module to help
automate the process. In this case, you can start the CPAN shell with the
command perl -MCPAN -e shell, and then type...
... called by the ApacheHandler or CGIHandler modules provided
with Mason.
The Interpreter asks the Resolver to fetch the requested component from the
filesystem. Then the Interpreter asks the Compiler ... equivalent to a
bunch of Perl lines in a row. It begins with the start tag < %perl& gt; and ends
with the end tag </ %perl& gt;. The contents of the...
... any other block (including an <%init> block). Any
variables declared here remain in existence (and in scope) until the
component is flushed from memory or the Perl interpreter running Mason ... the curious, these issues are covered in Chapter 3
, Chapter 5, and
Chapter 12
. Return.
2. The percent sign (%) must occur at the beginning of the line. Retur...
... no filtering is necessary.
Inspecting the Wrapping Chain
When Mason processes a request, it builds the wrapping chain and then
executes each component in the chain, starting with the topmost ... caring whether the
article had its own component file or whether it was generated by the
dhandler.
Remember, autohandlers and dhandlers are distinct features in Mason,...
... get some information about the components in a
request.
Using some of these methods requires an understanding of autohandlers and
the wrapping chain, a topic that was covered in Chapter 3
. ... and including, the current component.
The first element of the array will be the current component and the
last will be the first component in the stack.
If this met...
... using Mason under mod _perl with the
HTML: :Mason: :ApacheHandler class, which is covered in Chapter 7
,
the Request object will contain several additional methods.
•
ah
This method returns the ... covered in Chapter 7
.
Methods Available When Using ApacheHandler or CGIHandler
Two additional request methods are available when using the
HTML: :Mason: :ApacheHandler...
... Mason directive that defines one component from within another.
The component embedded within the <%def> block is called a
subcomponent , and it is visible only to the component within ...
SELF:title method. The title method invoked is the one
contained in /your_order .html.
3. The /your_order .html: title method runs, and the value of
the $order_date is stil...
... for other.mas first in the main component
root, then in the utils root. It makes no difference whether the component
call is done by using the component path other.mas or /dir/other.mas; the ... into the latter by prepending the
/dir/top_level.mas's dir_path.
If there are two components with the same path in the main and util
roots, you won't be able...
... then tell mod _perl to use Mason as a
PerlContentHandler . Here is the simplest possible configuration:
SetHandler perl- script
PerlHandler HTML: :Mason: :ApacheHandler
The SetHandler directive ... using Apache 1.3.x and
mod _perl 1.22 or greater. In addition, your mod _perl should have been
compiled with PERL_ METHOD_HANDLERS=1 and
PERL_ TABLE_API=1, or with EVE...