,ch14.9433 Page 453 Monday, February 14, 2005 12:55 PM
Tiles includes a nested tabbed layout that allows you to contain submenus on each
tab. Tiles comes with several other useful layouts. You can see these layouts in action
with the tiles documentation sample application included with Struts. The source
code for these layouts ships with the Struts source distribution.
14.5 Using Tiles for I18N
You want to customize a Tiles definition based upon the user's language and coun
Create a separate version of your Tiles definition file for the specific locale; appending
the locale code to the file name. If you saved your Tiles definition file as tiles def.xml,
you would save the locale specific definitions file for Spanish as tiles def_es.xml.
Developers commonly localize JSP pages in a Struts application using a localized mes
sage resources file and the
tag. If you need to display a different page and
you are using Tiles, you can set aside a Tiles definition for a specific locale by placing
it in a locale specific Tiles definition file. At runtime, Tiles searches for a matching
definition by considering the definition name and the current locale. You indicate the
locale that applies to the definition by appending the locale's language and country
code to the file name, as you would for localizing a message resources properties file.
For example, if your Tiles definitions are specified in tiles def.xml, definitions specific
to the Spanish language will be placed in tiles def_es.xml. If you needed definitions
specific for French Canadians, you would store them in tiles def_fr_CA.xml.
Example 14 9 shows the Tiles definition file, tiles def_es.xml, that overrides the
definition from Example 14 5.
Example 14 9. Overriding a definition for a specific locale
" //Apache Software Foundation//DTD Tiles Configuration 1.1//EN"
Using Tiles for I18N | 453
This is the Title of the Book, eMatter Edition
Copyright 2005 O'Reilly & Associates, Inc. All rights reserved.