Einstellung Titel der Seite dynamisch mit tiles2 und spring mvc
Ich habe mich gefragt, diese Frage seit geraumer Zeit und ich habe nicht gefunden eine schöne Lösung für dieses auf der web.
So, ich bin mit Tiles2 und Spring MVC und ich würde gerne den Titel der Seite dynamisch in den Körper Fliesen. Gibt es eine Möglichkeit?
<definition name="mainTemplate" template="/WEB-INF/template/main.jsp">
<put-attribute name="header" value="/WEB-INF/template/header.jsp" />
<put-attribute name="footer" value="/WEB-INF/template/footer.jsp" />
<put-attribute name="body" value="/WEB-INF/template/blank.jsp" />
</definition>
<definition name="list" extends="mainTemplate">
<put-attribute name="body" value="/WEB-INF/jsp/list.jsp" />
</definition>
meine aktuelle Lösung ist die Einstellung der Titel in den controller
model.addAttribute("pageTitle", "blubb");
- und das tut c:in der Vorlage
Du musst angemeldet sein, um einen Kommentar abzugeben.
Fliesen-Technik
Wenn Sie von "ich will legen Sie den Titel der Seite dynamisch", Sie bedeutet "ich will", um die site-Titel, basierend auf der Kachel angezeigt werden und ich möchten, verwenden Sie eine Fliesen-feature, um es zu tun" und dann:
Variable Technik
Der einfachste Weg, das zu tun diese Technik ist, fügen Sie ein Attribut, um das Modell zu referenzieren, sagte Attribut mit einem el-Ausdruck. Zum Beispiel,
Dies können Sie tun, in Ihrem controller:
Verweisen Sie auf die "PageTitle" - Attribut in der Seite wie diese:
C:so:
Dies ist für mich arbeiten. Gibt es etwas falsch mit ihm?
FLIESEN:
JSP:
Können Sie auch kombinieren DwB zwei Antworten, so dass Sie erhalten das beste aus beiden Welten:
Nützlich, wenn Sie möchten, einige Seiten haben statische Titel (so brauchen Sie nur, um es in die tiles.xml Datei), einige Seiten haben voll dynamische Titel (nicht alles, was in tiles.xml, fügen Sie einfach die Seitentitel Ihrer model-Objekt) oder von beidem ein bisschen (mein Favorit), wo Sie eine statische ersten Hälfte und einer dynamischen zweiten Hälfte.
tiles.xml:
JSP:
Aber das ist nur eine gute Lösung, wenn Ihre Anwendung nur eine Sprache.