By default, Tiles 2.1 supports wildcards in definition names. Wilcards help a lot in writing less code to declare your definitions. Take this example:
<definition name="test.definition*.message*" template="/layout{1}.jsp">
<put-attribute name="title" value="This definition has a message: {2}."/>
<put-attribute name="header" value="/header.jsp"/>
<put-attribute name="body" value="/body.jsp"/>
</definition>
If you insert a definition that matches the definition, for example:
<tiles:insertDefinition name="test.definitionOne.messageThisIsAMessage" />
The definition is automatically mapped, replacing placeholders, marked by curly brackets, with the value of matched definitions. In this case:
<definition name="test.definitionOne.messageThisIsAMessage" template="/layoutOne.jsp">
<put-attribute name="title" value="This definition has a message: ThisIsAMessage."/>
<put-attribute name="header" value="/header.jsp"/>
<put-attribute name="body" value="/body.jsp"/>
</definition>