Comment puis-je ajouter .jsp en-têtes et pieds de page pour mon Spring MVC web app?
Comment puis-je ajouter .jsp en-têtes et pieds de page pour mon Spring MVC web app?
Je sais qu'il y a de nombreuses réponses différentes, mais j'aimerais savoir (tous vraiment mais le plus important) quelle est la bonne façon de le faire? Je suis en train d'apprendre le Printemps et j'ai un indicateur de la réponse réside dans la HandlerInterceptor. Pour l'instant, je pourrais tout faire .jsp comprend. Même avec cette comprennent solution, pourriez-vous nous détailler l'endroit où je place les en-têtes/pieds de page structurellement? Tout conseil ou de la direction serait génial.
OriginalL'auteur Xonatron | 2012-02-23
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé votre question, en faisant des recherches 🙂 vous ne savez Pas si ma solution est
<good | bad | a hack | already exists>
ou si il ya une meilleure façon, mais il fonctionne pour mon projet actuel.Dans votre
myapp-servlet.xml
vous pouvez étendre la viewResolver viewClass avec votre propre mise en œuvre:myapp-servlet.xml
En remplaçant la renderMergedOutputModel vous pouvez forcer tous les vues pour vraiment être un modèle dans lequel vous pouvez définir votre mise en page globale, puis il suffit de
<jsp:include/>
vos partielle(s).JstlView.java
Si vous regardez le Printemps InternalResourceView.java vous aurez ainsi une meilleure idée de ce que le Printemps est en train de faire au moment de déterminer ce que la vue à utiliser.
modèle.jsp
Comment faire pour obtenir une demande /session /servletcontext attribut dans la JSP en utilisant EL? m'a aidé ici à l'obtention de la valeur de l'attribut
${partial}
.simple_partial.jsp
Puis dans un contrôleur, le retour de la
simple_partial
vueApp.java
qui vous permettra d'être enveloppé par la
template.jsp
et a répondu.Les bonnes questions. Il a été un moment depuis que j'ai écrit et je ne peux pas vraiment le souvenir de ce que j'ai fait. Je crois que j'ai utilisé
rd.forward(requestToExpose, getRequestToExpose(request))
dans leJstlView
à l'avant sur une autre ressource. Vous pouvez également obtenir le chemin d'accès pour la demande répartiteur avecprepareForRendering(getRequestToExpose(request), response)
. Je crois qu'un@ResponseBody
méthode annotée qui nereturn new ModelAndView(partial, model, modelObject)
est correctement atteindre l'partielle. J'ai probablement utiliséexposeModelAsRequestAttributes(model, requestToExpose)
dans monrenderMergedOutputModel
Je vais essayer de trouver une partie du code et de modifier ma réponse plus tard.
existe-il des mises à jour sur ce point? je suis également dans le même scénario
OriginalL'auteur andyb
Je le recommande SiteMesh premier et Tuiles seconde.
Alors que c'est votre réponse. Vous n'avez pas besoin de quelque chose à partir de ce site.
merci, mais ma question était bien au-delà de là où j'étais déjà au. Pour quelqu'un d'autre de lire ceci, je voudrais tout de même apprécier toute entrée ou en élaboration.
Je vous recommande de regarder les liens que j'ai fournis. Même si vous ne souhaitez pas utiliser "les autres gens du code", vous pouvez obtenir un aperçu de la façon qu'ils en pensaient.
OriginalL'auteur duffymo