> By the way, I will try to write some documentation for Clay. I already
> have to do it but in french, so I guess a little translation won't be
> too difficult and can help the community. In my mind, Clay is the
> component that need the most explanations in Shale Frameworks. So if
> any developpers read this, feel free to post many details.
>
That would be outstanding. I've been holding off on Clay documentation for a
couple reasons. I've been spending most of my time with features and I'm also
holding out on some help (someone currently working on a couple of books
besides speaking at the NFJS :-).
> On 11/28/05, Alexandre Poitras <[EMAIL PROTECTED]> wrote:
> > Hi,
> >
> > I am trying to get a grasp on Struts Clay. I understand there are 4
> > ways of using it and wich one you might want to use depends of the
> > situation.
> >
> > I would like to do something similar to what is found in the rolodex
> > usecase, ie. define a component layout in his own html files (like the
> > adress panel in rolodex or Tapestry components). To be able to do
> > that, Rolodex seems to use the jsp tags approach but I don't
> > understand totally how it is done for the moment. I wanted to know if
> > someone could give me some hints about it (like the necessary steps)
> > and if I could use another aproach.
> >
There are a number a options but this is the one made available yesterday:
You could start with an XML full view that is loaded on demand (page1.xml):
<view>
<component jsfid="/page1.xml" extends="baseLayout">
<symbols>
<set name="title" value="Page 1"/>
<set name="bodyContent" value="/page1Body.html"/>
</symbols>
</component>
</view>
In your common/global XML config loaded on startup:
<view>
<component jsfid="baseLayout" extends="clay">
<attributes>
<set name="clayJsfid" value="/layout.html"/>
</attributes>
<symbols>
<set name="title" value="Hello World"/>
<set name="leftContent" value="/defaultLeftNav.html"/>
<set name="headerContent" value="/defaultHeader.html"/>
<set name="bodyContent" value="/defaultBody.html"/>
<set name="footerContent" value="/defaultFooter"/>
</symbols>
</component>
</view>
And, then create layout.html
<html>
<head><title>@title</title></head>
<body>
<table>
<tr>
<td rowspan=3><span jsfid=clay [EMAIL PROTECTED]
allowBody=false>Left Content</span></td>
<td><span jsfid=clay [EMAIL PROTECTED]
allowbody=false>Header Content</span></td>
</tr>
<tr>
<td><span jsfid=clay [EMAIL PROTECTED]
allowBody=false>Body Content</span>Body Content</td>
</tr>
<tr>
<td><span jsfid=clay [EMAIL PROTECTED]
allowBody=false>Body Content</span>Body Content</td>
</tr>
</table>
</body>
</html>
This kind of layout only works with the full XML and JSP views as the "view id"
but using an HTML entry page wouldn't add much value anyway.
Gary
> > Thank
> >
> > --
> > Alexandre Poitras
> > Québec, Canada
> >
>
>
> --
> Alexandre Poitras
> Québec, Canada
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]