Cześć,
Mam mały problem z konfiguracją apache tiles. Mianowicie chciałbym mieć taką strukturę :
- base.layout.jsp
-- main.layout.jsp
-- auth.layout.jsp
W base.layout.jsp chcę mieć wszystkie css oraz js.
main.layout.jsp główny layout po zalogowaniu się przez użytkownika
auth.layout.jsp layout do logowania, rejestracji, itp.
plik tiles.xml:
<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE tiles-definitions PUBLIC
"-//Apache Software Foundation//DTD Tiles Configuration 2.0//EN"
"http://tiles.apache.org/dtds/tiles-config_2_0.dtd">
<tiles-definitions>
<definition name="base.definition" template="/WEB-INF/views/jsp/base.layout.jsp">
<put-attribute name="title" value="" />
<put-attribute name="meta.description" value="" />
<put-attribute name="meta.keywords" value="" />
<put-attribute name="meta.author" value=""/>
<put-attribute name="body.class" value="" />
</definition>
<definition name="login.layout.definition" extends="base.definition">
<put-attribute name="title" value="" />
<put-attribute name="body" value="/WEB-INF/views/jsp/auth.layout.jsp" />
</definition>
<definition name="authorization/login" extends="login.layout.definition">
<put-attribute name="content" value="/WEB-INF/views/jsp/authorization/login.jsp" />
</definition>
</tiles-definitions>
plik base.layout.jsp (nie będę całego wrzucał)
//ładownanie css, js, meta tagi, itp...
<body class="<tiles:getAsString name="body.class" defaultValue="login" />">
<tiles:insertAttribute name="body" />
</body>
Plik auth.layout.xml
<tiles:putAttribute name="body.class" value="login" />
<div class="row">
<tiles:insertAttribute name="content" /> // W tym miejscu chciałbym aby ładować poszczególne widoku(login, registration, ...)
</div>
Niestety wyskakuje mi exception:
org.apache.tiles.template.NoSuchAttributeException: Attribute 'content' not found.
Czy byłby ktoś wstanie pomóc rozwiązać problem bądź wytłumaczyć jak do tego się zabrać prawidłowo ?