Comment t'y prends tu pour récupérer ta String nomDeLaPage.
Tu la places dans la request depuis une servlet ?
Tu la déclares depuis ta JSP via scriptlet ?
En tout cas, si tu définies la String pageAInclure via une "déclaration scriptlet" comme celle-ci :
1 2 3
| <jsp:declaration>
String pageAInclure = "inclu.jsp";
</jsp:declaration> |
Et que tu fais ton include de cette manière :
<jsp:include page="<%=pageAInclure %>" />
Cela fonctionne.
D'où ma question, où est-ce que tu déclares nomDeLaPage ?
On notera aussi que tu ne peux pas écrire du code java dans une JSP hors des balises prévues pour comme tu le fais (aussi bien pour ta déclaration de nomDeLaPage que pour le if/else.
J'ajouterai que si tu as du code java (scriptlet, declaration, expression, EL, jstl...) dans la page que tu inclus, il ne sera pas exécuté!
Deux solutions:
1) Passer les paramètres utilisés dans la page incluse de cette manière :
1 2 3
| <jsp:include page="pageAInclure.jsp" >
<jsp:param name="paramètre" value="valeur" />
</jsp:include> |
(Ce qui peut être lourd si tu as beaucoup de paramètres)
2) Utiliser un 'include' un peu différent :
<%@ include file="pageAInclure.jsp" %>
La différence est que la deuxième solution va littérarelement copier le contenu de pageAInclure.jsp et exécuter le code dans le même cycle que ta page "principale".
Partager