I'm googling now for the article you mentioned since it isn't clear to me
exactly where you meant.

If you have a URL I'd appreciate it.

This Tiles Controller looks like it is worth a good look.


Regards
Marty


-----Original Message-----
From: David G. Friedman [mailto:[EMAIL PROTECTED] 
Sent: Tuesday, 14 June 2005 4:36 PM
To: Struts Users Mailing List
Subject: RE: Themes

Martin,

If you're using tiles already, be sure to check out a tiles controller.  It
can insert pieces (putList) into your tile however you wish it, i.e. if the
path is /members, if you set a (session?) cookie, etc.  A tutorial on the
capabilities of Tiles Controllers by Cedric Dumoulin which I wrote about
earlier this week.  The link is under the userGuide section for Tiles (at
the bottom of the page).  The site is in France but the tutorial is in
English, if I recall correctly.  I read it a year ago but it should still be
relevant and current.

Regards,
David

-----Original Message-----
From: Martin Ravell [mailto:[EMAIL PROTECTED]
Sent: Tuesday, June 14, 2005 2:09 AM
To: 'Struts Users Mailing List'
Subject: RE: Themes


Thanks for the links David.

The app is already using Tiles extensively and as a result I need something
that integrates well with this framework.

I've had a quick read of the SiteMesh and Xkins sites and plan to download
and compare the two later today.

Will post back any findings.


Regards
Marty

-----Original Message-----
From: David G. Friedman [mailto:[EMAIL PROTECTED]
Sent: Tuesday, 14 June 2005 2:58 PM
To: Struts Users Mailing List
Subject: RE: Themes

Martin,

Have you looked at any of these?

a) Tiles
        http://struts.apache.org
b) SiteMesh:
        http://www.opensymphony.com/sitemesh
c) XKins:
        http://xkins.sourceforge.net/

Regards,
David

-----Original Message-----
From: Martin Ravell [mailto:[EMAIL PROTECTED]
Sent: Monday, June 13, 2005 8:22 PM
To: Struts User Mailing List
Subject: Themes

I have a requirement to build a 'Themes' (think 'skins') capability into the
UI of my Struts app and would just like to poll the list for ideas on the
best way to approach such a mechanism. Multiple customers use the same app
but they need to be presented with a view that meets their specific
requirements. For example graphics, fonts and even layout would be specific
to the user's login (actually their company/organization which is stored in
the database).

Now, for ease of use I guess something relying on CSS would be a way to go.
Since I already use stylesheets for most HTML elements specifying a
particular theme's stylesheet would not be hard.

The tricky part is that I'd also like to be able to specify different jsp
pages (mainly for Tiles layouts) in case I need to modify the layout beyond
what is easy to do with CSS. Ultimately I may well have functionality in the
app itself that is specific to a given customer so this concept should deal
with handling customisation to that level well.

Ideally I'd like to have a concept of an 'alternate source' directory that
is used by the app to load it's jsp. i.e. the app first looks under the
appropriate alternate directory for a jsp and uses the page it finds there
if it exists but falls back to the standard jsp dir if there is no
alternate. This would mean that I could create a theme with only those pages
that need to be modified rather than copying and modifying the entire jsp
source tree.

If anyone has had to implement something along these lines I'd love to hear
from you. What sort of mechanisms have you found work well within the
structure of a Struts app? My architecture is Struts, Tiles, Spring and
Hibernate if you are interested but I'm thinking that it's the Struts area
that I'll be looking at mostly for this job.

Are there any Struts sub-projects that touch on this sort of thing?


Regards

Marty



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