Bonjour,
Aujourd'hui j'ai un problème sur lequel je planche depuis quelques jours sans trouver de solution... Parce que j'ai du mal à le formuler...
Pour le simplifier au maximum, disons que j'ai la page jsp suivante :
index.jsp
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 <?xml version="1.0" encoding="UTF-8" ?> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>page</title> </head> <body> <%@ include file="content.jsp" %> </body> </html>
Simplifié au maximum car cette page contient le header, login, le nav, le footer...
Mais ce sont des éléments plus ou moins fixes.
Mon "problème" est que content.jsp... est dynamique. Si je suis sur la page d'accueil, il doit m'afficher le message de bienvenue.
Si je suis sur la page FAQ, il doit m'afficher les questions/réponses
Si je suis sur la page Contact, un formulaire ...
Oui mais je le fais comment ? :s
J'ai voulu faire ceci :
Ca fonctionne certes... Mais ça me semble hyper crade et je pense qu'on doit pouvoir faire autrement avec les servlets.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 <% /* On recupere le parametre de page a afficher */ page = request.getParameter("page"); if ("index".equals(page) || page == null ){ %> <%@ include file="/accueil.jsp" %> <%}else if("temp".equals(page)){ %> <%@ include file="/temp.jsp" %> <%}else{ %> <%@ include file="/404.jsp" %> <%} %>
De plus, ça oblige à mettre du code conditionnel tout partout, ça devient horrible à lire...
Mais le fait est que je ne sais pas comment changer le contenu de content.jsp dynamiquement.
A la base, j'avais plus un truc style page_haut.jsp, page_bas.jsp...
page_haut.jsp
page_bas.jsp
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 <?xml version="1.0" encoding="UTF-8" ?> <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr"> <head> <title>page</title> </head> <body>
Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 </body> </html>
j'avais ma page toto.jsp qui incluait les deux et voilà, aucun problème.
Sauf que là, c'était sémantiquement incorrect pour les fichiers en eux même, on ouvrait des balises sans les fermer et tutti quanti...
Et puis ça n'a pas été validé au dessus de moi.
Donc j'aimerai savoir comment faire...
Si vous aviez des idées, des pistes, des façons de faire...
Merci à vous,
Partager