[JSP] Perte des valeurs d'un formulaire après POST
Bonjour,
Je rencontre un comportement bizarre sur ma page jsp, un formulaire classique recherche + liste.
Lorsque je poste le formulaire, certains de mes critères de recherche sont remis à blanc lors du retour du submit.
Voici le formulaire en question.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117
|
<%@ page contentType="text/html;charset=ISO-8859-1" language="java"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Université</title>
<link href="<%=request.getContextPath()%>/css/style.css" type="text/css" rel="stylesheet"/>
<link href="<%=request.getContextPath()%>/css/universite.css" rel="stylesheet" type="text/css">
</head>
<body>
<%@include file="/demarrage/header.jsp"%>
<%@include file="/demarrage/menu.jsp"%>
<div class="titreSeparatif">
<s:property value="message" />
</div>
<s:actionerror/>
<s:form name="GestionFormateurForm" method="POST">
<table class="tabFondBleueDeuxColonnes">
<tr>
<td>
<s:text name="menu.administration.formateurs.nomFormateur"></s:text>
</td>
<td>
<s:textfield id="nomRechercheFormateur" name="nomRechercheFormateur"/>
</td>
<td>
<s:text name="menu.administration.formateurs.categorie"></s:text>
</td>
<td>
<s:select name="categorie"
id="categorie"
headerKey="0"
headerValue="-- Svp Selectionez --"
list="listCategories"
listKey="idCategorie"
listValue="libelle"
>
</s:select>
</td>
<td>
<s:submit action="listFormateur" value="Rechercher" />
</td>
</tr>
<tr>
<td>
<s:text name="menu.administration.formateurs.nomOrganisme"></s:text>
</td>
<td>
<s:textfield id= "organismeRechercheFormateur" name="organismeRechercheFormateur" />
</td>
<td>
<s:text name="menu.administration.formateurs.competence"></s:text>
</td>
<td>
<s:select name="competence"
id="competence"
headerKey="0"
headerValue="-- Svp Selectionez --"
list="listCompetences"
listKey="idCompetence"
listValue="Competence">
</s:select>
</td>
</tr>
<tr>
<td> </td><td> </td>
<td>
<s:text name="menu.administration.formateurs.souscompetence"></s:text>
</td>
<td>
<s:select name="souscompetence"
id="souscompetence"
headerKey="0"
headerValue="-- Svp Selectionez --"
list="listSousCompetences"
listKey="idSousCompetence"
listValue="libelle">
</s:select>
</td>
</tr>
</table>
<table class="tableauAffichageRecherche">
<tr>
<td class="tableauFormateurTitre">Nom</td>
<td class="tableauFormateurTitre">Prénom</td>
<td class="tableauFormateurTitre">Organisme</td>
<td class="tableauFormateurTitre">Evaluation du formateur</td>
<td class="tableauFormateurTitre"> </td>
</tr>
<s:iterator value="listFormateur">
<tr>
<td><s:property value="nom" /></td>
<td><s:property value="prenom" /></td>
<td><s:property value="Organisme.nom" /></td>
<td><s:property value="" /></td>
<td>
<s:url id="delete" action="deleteFormateur">
<s:param name="idFormateur" value="idFormateur" />
</s:url>
<s:a href="%{delete}" onclick="javascript: if (confirm('Etes-vous certain de vouloir supprimer ce formateur ?')) return true; else return false;">
<img border="0" alt="Supprimer ce formateur" src="<%=request.getContextPath()%>/css/images/poubelle.gif">
</s:a>
</td>
</tr>
</s:iterator>
</table>
<div class="boutton">
<a href="<s:url action="addFormateur"/>">
<img border="0" alt="Créer un nouveau formateur" src="<%=request.getContextPath()%>/css/images/bouton_nouveau.jpg">
</a>
</div>
</s:form>
<%@include file="/demarrage/footer.jsp" %>
</body>
</html> |
Lorsque je clique sur Rechercher, la recherche s'effectue sans aucun problème et la liste contient bien les bons résultats.
Seulement le textfield organismeRechercheFormateur se vide, contrairement à nomRechercheFormateur.
En debug, lorsque je sors de ma fonction java rechercherFormateur(), les attributs java correspondants aux champs de mon formulaire ont encore les bonnes valeurs. C'est véritablement lors du rendu html que ça se perd. Un problème de cache ?
Merci d'avance si vous avez des pistes !