You could over load on the insert


<tiles:insert attribute="example.page">
        <tiles:put name="body" value="<%= body %>" />
</titles:insert>

or do it a specialized action. There are plenty of options although I have trouble thinking of many scenarios where having 1000 different definitions would be required.

In such a case having an action that mediated in the tile selection i guess could be one means of doing what i think you're saying.

In the above case for example you could have your action add a request attribute called body or even have an action that extends TileAction and mess with whatever you like.

On 27 Dec 2003, at 20:55, Brady Hegberg wrote:

Of course!  I just need to forward to the def that corresponds to the
user's settings.  Very simple and elegant.

However, theoretically, what if I had three tiles in a definition, each
of which could get any one of the same 10 different values.  In that
case I'd need to create 1000 definitions in my tile-defs.  Is there a
simple way around that?

There are a number of options available here, i'd have a different def
that extends showList , I'd call this base.list and then have different
defs per list.


name="user.list" extends="base.list"

in fact i assumed you'd only have to over load body, you could even
have a def as the value of body.


On 27 Dec 2003, at 06:12, Brady Hegberg wrote:


I've been trying to find the best way to handle a situation where you
have various formats for a tile and the tile appearance is chosen at
run-time.

<definition name="showList" extends="mainLayout">
  <put name="header" value="/header.jsp"/>
  <put name="body" value="/????"/>
  <put name="footer" value="/footer.jsp"/>
</definition>

And I have content1.jsp, content2.jsp and content3.jsp which can be
loaded into the page

Should I:

1. Have a single tile with choose statements to determine the format.
2. Have a single master tile which chooses between various tiles and
loads the selected one? (If possible?)
3. Have a ClassController or TilesAction class which changes the tile
object and loads the chosen tile into the tile object before displaying
it. (If so how is this done? Any examples available?)


I found a couple similar references in the archives but no definitive
answer.

Thanks,
Brady

PS: It would be cool if you could create an action for a tile and then
do an actionForward which returns the chosen tile into the correct spot
on the calling page but I don't believe this is possible. At least
I've
never seen anything that indicated it could be done.



--------------------------------------------------------------------- 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]



---------------------------------------------------------------------
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]



Reply via email to