At Mon, 15 Jul 2002 08:14:32 +0300, variable wrote:
> I try to display a page title using three embperl files.
>
> ---main.epl---
> [! sub title {'Website'} !][- $req = shift -]<HTML> <HEAD> <TITLE>[+
> $req->title +]</TITLE> </HEAD><body>[- Execute('*') -]</body> </HTML>
> ---
>
> ---first.epl---
> [- $req = shift -] <HTML> First... [- Execute('second.html ') -]</HTML>
> ---
>
> ---second.epl---
> [! sub title {'Second page'} !] [- $req = shift -] <HTML> Final page</HTML>
> ---
>
> When I access second.epl directly via main.epl then it works fine.
> But accessing second.epl via main.epl -> first.epl then title is not
> imported anymore.
> What am I doing wrong?
> I'm using Embperl 2.0b8.
(assuming its all similar to HTML::EmbperlObject 1.3..)
EmbperlObject sets up the following inheritance:
page you requested (aka '*')
isa the _base.epl found (or whatever EMBPERL_OBJECT_BASE is)
isa EMBPERL_OBJECT_HANDLER_CLASS (if set)
isa HTML::Embperl::Req (presumably Embperl::Req in 2.0)
note that "second.epl" won't feature in that list anywhere, unless it
was the actual page requested. going "via first.epl" will never work.
thus $req->title will get the one in main.epl (assuming thats your
EMBPERL_OBJECT_BASE).
if you want to change this inheritance list, you'll need to do so by
calling Execute({isa => 'second.epl'}) in first.epl somewhere. see
Embperl docs (again, i presume this is the same (and working) in
Embperl 2)
--
- Gus
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]