This project has retired. For details please refer to its Attic page.
tiles (Tiles - JSP support Tag library documentation)

tiles


Standard Syntax:
     <%@ taglib prefix="tiles" uri="http://tiles.apache.org/tags-tiles" %>

XML Syntax:
     <anyxmlelement xmlns:tiles="http://tiles.apache.org/tags-tiles" />

This tag library provides Tiles tags.

Tag Library Information
Display NameNone
Version2.0
Short Nametiles
URIhttp://tiles.apache.org/tags-tiles
 

Tag Summary
insertTemplate

Insert a template.

Insert a template with the possibility to pass parameters (called attributes). A template can be seen as a procedure that can take parameters or attributes. <tiles:insertTemplate> allows to define these attributes and pass them to the inserted jsp page, called template. Attributes are defined using nested tag <tiles:putAttribute> or <tiles:putListAttribute>.

You must specify template attribute, for inserting a template

Example :

  <tiles:insertTemplate template="/basic/myLayout.jsp" flush="true"> <tiles:putAttribute name="title" value="My first page" /> <tiles:putAttribute name="header" value="/common/header.jsp" /> <tiles:putAttribute name="footer" value="/common/footer.jsp" /> <tiles:putAttribute name="menu" value="/basic/menu.jsp" /> <tiles:putAttribute name="body" value="/basic/helloBody.jsp" /> </tiles:insertTemplate>  
insertDefinition

Insert a definition.

Insert a definition with the possibility to override and specify parameters (called attributes). A definition can be seen as a (partially or totally) filled template that can override or complete attribute values. <tiles:insertDefinition> allows to define these attributes and pass them to the inserted jsp page, called template. Attributes are defined using nested tag <tiles:putAttribute> or <tiles:putListAttribute>.

You must specify name tag attribute, for inserting a definition from definitions factory.

Example :

  <tiles:insertDefinition name=".my.tiles.defininition flush="true"> <tiles:putAttribute name="title" value="My first page" /> <tiles:putAttribute name="header" value="/common/header.jsp" /> <tiles:putAttribute name="footer" value="/common/footer.jsp" /> <tiles:putAttribute name="menu" value="/basic/menu.jsp" /> <tiles:putAttribute name="body" value="/basic/helloBody.jsp" /> </tiles:insertDefinition>  
insertAttribute

Inserts the value of an attribute into the page.

This tag can be flexibly used to insert the value of an attribute into a page. As in other usages in Tiles, every attribute can be determined to have a "type", either set explicitly when it was defined, or "computed". If the type is not explicit, then if the attribute value is a valid definition, it will be inserted as such. Otherwise, if it begins with a "/" character, it will be treated as a "template". Finally, if it has not otherwise been assigned a type, it will be treated as a String and included without any special handling.

Example :

  <tiles:insertAttribute name="body" />  
definition

Create a definition at runtime.

Create a new definition at runtime. Newly created definition will be available across the entire request.

putAttribute

Put an attribute in enclosing attribute container tag.

Enclosing attribute container tag can be :

  • <initContainer>
  • <definition>
  • <insertAttribute>
  • <insertDefinition>
  • <putListAttribute>
(or any other tag which implements the PutAttributeTagParent interface. Exception is thrown if no appropriate tag can be found.

Put tag can have following atributes :

  • name : Name of the attribute
  • value : value to put as attribute
  • type : value type. Possible type are : string (value is used as direct string), template (value is used as a page url to insert), definition (value is used as a definition name to insert), object (value is used as it is)
  • role : Role to check when 'insertAttribute' will be called.

Value can also come from tag body. Tag body is taken into account only if value is not set by one of the tag attributes. In this case Attribute type is "string", unless tag body define another type.

putListAttribute

Declare a list that will be pass as attribute to tile.

Declare a list that will be pass as attribute to tile. List elements are added using the tags 'addAttribute' or 'addListAttribute'. This tag can only be used inside 'insertTemplate', 'insertDefinition', 'definition' tags.

addAttribute

Add an element to the surrounding list. Equivalent to 'putAttribute', but for list element.

Add an element to the surrounding list. This tag can only be used inside 'putListAttribute' or 'addListAttribute' tags. Value can come from a direct assignment (value="aValue")

addListAttribute

Declare a list that will be pass as an attribute.

Declare a list that will be pass as an attribute . List elements are added using the tag 'addAttribute' or 'addListAttribute'. This tag can only be used inside 'insertTemplate', 'insertDefinition' or 'definition' tag.

getAsString

Render the value of the specified template attribute to the current JspWriter

Retrieve the value of the specified template attribute property, and render it to the current JspWriter as a String. The usual toString() conversions is applied on found value.

Throw a JSPException if named value is not found.

useAttribute

Use attribute value inside page.

Declare a Java variable, and an attribute in the specified scope, using its attribute value.

Java variable and attribute will have the name specified by 'id', or the original name if not specified.

importAttribute

Import attribute(s) in specified context.

Import attribute(s) to requested scope. Attribute name and scope are optional. If not specified, all attributes are imported in page scope. Once imported, an attribute can be used as any other beans from jsp contexts.

initContainer

Initialize the TilesContainer.

In order to use the Tiles system, a TilesContainer must be instantiated. This initialization is generally done by the TilesListener (or perhaps the TilesServlet or TilesFilter).

If the intialization needs to be dynamic, you can initialize the container using this tag. Realize however, that this tag MUST be executed prior to invoking any other definitions. Additionally, the initilization may only be done once, and any subsequent invocations will be ignored.

destroyContainer

Destroy the TilesContainer.

 


Java, JSP, and JavaServer Pages are trademarks or registered trademarks of Sun Microsystems, Inc. in the US and other countries. Copyright 2002-3 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054, U.S.A. All Rights Reserved.