Я хочу написать имя определения тайлов прямо в шаблоны.Но я понятия не имею, как получить доступ к имени определения.
Чтобы проиллюстрировать, что я хочу сделать, взгляните на этот обходной путь:
<tiles-definitions>
<definition extends="default" name="index">
<put-attribute name="body" value="/WEB-INF/views/index.jspx"/>
<put-attribute name="pageId" value="index"/>
</definition>
<definition extends="default" name="login">
<put-attribute name="body" value="/WEB-INF/views/login.jspx"/>
<put-attribute name="pageId" value="login"/>
</definition>
</tiles-definitions>
Шаблон по умолчанию:
<html>
...
<tiles:useAttribute id="tiles_pageId" name="pageId" classname="java.lang.String" />
<body id="pageId_${tiles_pageId}">
...
</body>
</html>
Это работает.Я могу указать атрибут (pageId) в определении, прочитать его в шаблоне и записать в выходной файл шаблона.
Но вы видите, что между именем определения и pageId
есть корреляция 1: 1.Поэтому я не хочу писать имя дважды (определение name
и pageId
) в определении.Вместо этого я ищу способ пропустить объявление атрибута pageId
и получить имя определения каким-либо другим образом в шаблоне (не записывая его дважды, снова и снова.)