Ich entwickle mein eigenes Projekt mit Spring-Mvc und Spring-Webflow. Nachdem ich einige Artikel über Spring Webflow und Ajax gelesen hatte, verstand ich die bessere Option ist die Verwendung von Apache Tiles zum Rendern der Ansicht.Migration von Sitemesh zu Apache Tiles
In Sitemesh habe ich einen Tag Call-Head() verwendet. Dieses Tag, das in der Vorlage verwendet wird, ermöglicht das Rendern des gesamten head-Attributs einer Seite, die auf dem resultierenden HTML gerendert wird.
Gibt es eine Möglichkeit, dies in Apache Tiles zu erreichen? Von meinen Lesungen nehme ich an, dass ich Folgendes tun muss:
Zwei JPS, eine mit dem Körper der Seite und eine andere mit der Kopfdefinition. Hier ist ein Beispiel mit der Vorlage, einer Seite und der Kacheldefinition zum besseren Verständnis.
die Fliesen Definition
<tiles-definitions>
<definition name="base" template="/WEB-INF/view/templates/tileslayout.jsp">
<put-attribute name="title" value="Held - main page"/>
<put-attribute name="body" value=""/>
<put-attribute name="head" value=""/>
</definition>
<definition name="company.edit" extends="base">
<put-attribute name="head" value="/WEB-INF/view/company/editHeader.jsp"></put-attribute>
<put-attribute name="body" value="/WEB-INF/view/company/edit.jsp"></put-attribute>
</definition>
</tiles-definitions>
die Vorlage:
<%@ taglib uri="http://tiles.apache.org/tags-tiles" prefix="tiles" %>
<html>
<head>
-- css and scripts --
<tiles:insertAttribute name="head" ignore="true"/>
<!-- <decorator:head /> -->
</head>
<body>
--- menu definition ---
<div class="container-fluid">
<tiles:insertAttribute name="body"/>
<!-- <decorator:body/> -->
</div>
<hr/>
<footer>
-----
</footer>
</body>
</html>
eine Unternehmensseite
<div class="container">
-- the page html code
</div>
der Kopf Unternehmensseite
<meta name="menu" content="company" />
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style>
.error {
color: red;
}
</style>
<script type="text/javascript">
$(document).ready(function() {
$('#name').focus();
});
</script>
manchmal der Kopf vielleicht komplexer.
Das resultierende HTML ist in Ordnung. Aber ich mag es nicht, zwei JPs für etwas zu definieren, das einfach sein sollte.
Ich mache etwas falsch?
Gibt es einen besseren Weg, dies zu tun?
Danke sehr sehr. Nützliche Informationen. –