Je trouve ceci: http://tiles.apache.org/framework/tutorial/advanced/nesting-extending.htmlTiles Nesting Apache modèle
est l'exemple ici:
<definition name="myapp.homepage" template="/layouts/classic.jsp">
<put-attribute name="title" value="Tiles tutorial homepage" />
<put-attribute name="header" value="/tiles/banner.jsp" />
<put-attribute name="menu" value="/tiles/common_menu.jsp" />
<put-attribute name="body">
<definition template="/layouts/three_rows.jsp">
<put-attribute name="one" value="/tiles/headlines.jsp" />
<put-attribute name="two" value="/tiles/topics.jsp" />
<put-attribute name="one" value="/tiles/comments.jsp" />
</definition>
</put-attribute>
<put-attribute name="footer" value="/tiles/credits.jsp" />
</definition>
Je Selon cette définition:
<definition name="mgmt.base.layout" extends="base.layout">
<put-attribute name="body">
<definition template="/WEB-INF/mgmt/config/mgmtBody.jsp"/>
<put-attribute name="adminLeft" value="/WEB-INF/mgmt/config/left.jsp"/>
<put-attribute name="adminRight" value="/tiles/blank.html"/>
</definition>
</put-attribute>
</definition>
Mais le plus drôle est que, même leur sa propre documentation est erronée:
2009-05-12 11:20:56, 088 [principal] ERREUR - org.apache.commons.digester.Digester.error (Digester.java:1635): Erreur d'analyse à la ligne 17 colonne 68: L'attribut "nom" est requis et doit être spécifié pour le type d'élément "définition". org.xml.sax.SAXParseException: l'attribut "name" est requis et doit être spécifié pour le type d'élément "definition".
Même si je un nom à lui, il donne toujours l'erreur suivante:
2009-05-12 11: 35: 31818 [principal] ERREUR - org.apache.commons.digester.Digester .error (Digester.java:1635): Erreur d'analyse à la ligne 21, colonne 19: Le contenu du type d'élément "put-attribute" doit correspondre à "null". org.xml.sax.SAXParseException: Le contenu du type d'élément "put-attribute" doit correspondre à "null".
Qu'est-ce que cela signifie? !!!!