That did it. Boy, that's a lot of code, two definitions for each level of
the tree seems a bit extreme. And I still don't understand why one <put>
and one <putList> worked while the other <put> didn't, but it seems to be
working now, so thanks for the help.
(*Chris*)
On 10/16/06, Antonio Petrelli <[EMAIL PROTECTED]> wrote:
Chris Pratt ha scritto:
> I'm seeing some weird behavior with my tiles definitions that I can't
> explain and I was hoping someone smarter than me could lend an eye.
> Here's
> an excerpt from my tiles-defs.xml:
>
> <definition name="default.pane" extends="site.layout">
> <put name="body" value="default.layout" type="definition"/>
> </definition>
>
> <definition name="default.layout" path="default-layout.jsp">
> <put name="bluearea" value="/tiles/blank.jsp" type="page"/>
> <put name="whitearea" value="/tiles/blank.jsp" type="page"/>
> <putList name="breadcrumbs">
> <add value="/|head.home" type="string"/>
> </putList>
> </definition>
>
> <definition name="login.error" extends="default.pane">
> <put name="pagetitle" value="members" type="string"/>
> <put name="bluearea" value="/tiles/login-error.jsp" type="page"/>
> <putList name="breadcrumbs">
> <add value="/|head.home" type="string"/>
> <add value="/home|members" type="string"/>
> <add value="Sign-On Unsuccessful" type="string"/>
> </putList>
> </definition>
>
Err... <put> tags fill attributes only in the first level: in your
"login.error" definition you are extending "default.pane" definition,
using "default.pane"'s layout page and not "default-layout.jsp"! Anyway
you can rewrite your code this way:
<definition name="default.pane" extends="site.layout">
<put name="body" value="default.layout" type="definition"/>
</definition>
<definition name="default.layout" path="default-layout.jsp">
<put name="bluearea" value="/tiles/blank.jsp" type="page"/>
<put name="whitearea" value="/tiles/blank.jsp" type="page"/>
<putList name="breadcrumbs">
<add value="/|head.home" type="string"/>
</putList>
</definition>
<definition name="login.error.body" extends="default.layout">
<put name="pagetitle" value="members" type="string"/>
<put name="bluearea" value="/tiles/login-error.jsp" type="page"/>
<putList name="breadcrumbs">
<add value="/|head.home" type="string"/>
<add value="/home|members" type="string"/>
<add value="Sign-On Unsuccessful" type="string"/>
</putList>
</definition>
<definition name="login.error" extends="default.pane">
<put name="body" value="login.error.body" type="definition"/>
</definition>
HTH
Antonio
P.S. In Tiles 2 I posted a patch to support nested definitions, but in a
slightly different way.
http://issues.apache.org/struts/browse/SB-29
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]