Bonjour à tous,
je développe actuellement un programme avec J2EE. Je viens de découvrir les tags jstl qui permettent de ne pas avoir de vilain code Java dans ma JSP.
Cependant je suis confronté à un problème. Lors du remplissage d'un questionnaire l'utilisateur peut choisir combien de critères il veut.
Pour cela avant le formulaire final je fournis deux pages.
Dans la première il choisit le nombre de critères et dans la deuxième le type de critère (dans une liste avec <select>).
Etant donné que j'ai besoin du type de critère dans le formulaire final je les mets dans le request. Les valeurs vont de 1 à 6 selon le type de critère choisi.
Etant donnée qu'il est impossible de savoir combien de critères seront choisis je fait une boucle for et je fais ceci:
je mets chaque type successif en request avec comme nom de parametre:
"preference"<%=i%>
le code est encore en java car je n'ai pas encore changé cette page.
Enfin quand j'arrive sur la page final j'aimerai récupérer chaque valeur successive de préférence.
Ore avec les jstlm je suis bloqué. J'ai essayé ceci (je suis évidemment dans une boucle qui va de 1 jusqu'au nombre de critères):
${requestScope['preference'+{i}]} mais cela ne marche pas. Jstl n'arrive pas à concaténer et plante.
J'ai donc essayé une autre manière injectant quand même du code java:
<%
j=Integer.parseInt(request.getParameter("preference"+i));
pageContext.setAttribute("test",j);
%>
et en récupérant ma variable en jstl:
${pageContext['test']}
La le tomcat log me sit:
Property 'test' not found on type org.apache.jasper.runtime.PageContextImpl
je ne sais plus quoi faire. Auriez-vous une idée??
merci d'avance![]()
Partager