# Java > Dveloppement Web en Java > Servlets/JSP >  JSP - conserver les donnes saisies dans un formulaire aprs un r-affichage de la page ?

## Julie1987

Bonjour  tous,

C'est mon premier post ici, alors merci d'avance pour votre indulgence et bien sr pour votre aide  ::): 

Je travaille sur la maintenance d'une application web dont l'architecture technique MVC struts et qui utilise des beans et des JSP (+ hibernate pour la persistance) 

Dans ce cadre, je mets en place un formulaire contenant une dizaine de champs texte.

L'un des champs texte est associ est associ  un bouton "rechercher", ralisant une validation partielle  du formulaire : L'utilisateur saisit un ID dans le champ texte, puis clique sur le bouton "rechercher". Ceci dclenche une action de recherche en base puis affiche le nom de l'lment si l'ID saisi existe ou un message d'avertissement dans le cas contraire.

Enfin, le formulaire comporte un bouton de validation gnrale, destiner  crer et enregistrer une entit avec les lments renseigns.

Ma problmatique est de conserver l'affichage des donnes dj saisies par l'utilisateur, lorsque celui-ci clique sur le bouton "rechercher".

Bien sr, il est possible dans ma classe Action de rcuprer puis de renvoyer explicitement la valeur de chaque champ saisi, comme ci-dessous pour les 2 champs comment et interloc:



```

```

Mais cela me semble tellement peu lgant que ce n'est certainement pas comme a qu'il faut faire  ::): 


De plus, dans le code que je maintiens, un des champs, nomm "comment" est bien raffich aprs un clic sur "rechercher", bien que je ne passe pas explicitement sa valeur  la requte via setAttribute, comme je le fais ci-dessus pour "numtel" et "interloc".

Il y a donc visiblement un mcanisme "automatique"  (je veux dire du framework) qui fonctionne avec ce champ comment, ce que je vois d'ailleurs au dbugger, puisque je passe dans les getter/setter de comment via du code du framework)

Pourtant, les 3 champs comment, numtel et interloc sont des attributs de mon bean et dots des getters/setters adquats. La diffrence entre eux se situe dans ma JSP et je suis sre que c'est l que se situe mon problme, mais je ne connais pas suffisamment la syntaxe jsp pour le rsoudre :

D'abord, le code du champ "comment", qui se comporte bien :


```

```

Puis le code de interloc, par exemple, qui ne dclenche pas les setters/getters et qui donc est perdu lors de la validation partielle de ma page si je ne passe pas explicitment sa valeur  la requte comme je le fais ci-dessus ma mthode executeAction:


```

```

Voil donc une longue question pour un point srement un peu bte  ::oops:: , mais j'essaye d'tre la plus claire possible... 

Comment devrais-je dclarer mon champ interloc dans la jsp afin qu'il ne soit pas reset lors du raffichage de la page qui suit le "rechercher" ?

Grand merci d'avance pour vos lumires !

J.

----------


## Julie1987

Si quelque chose n'est pas clair, dites-le moi svp !

----------


## Julie1987

> Si quelque chose n'est pas clair, dites-le moi svp !


Faut-il croire que rien n'est clair ?  ::lun::

----------


## fr1man

Ton attribut "comment" est-il mis dans le scope session, contrairement  tes autres attributs qui doivent tre dans le scope request ?

----------


## Julie1987

Hmmm, a ressemble  une bonne piste...

Le scope est-il dfini dans la jsp ? (dsole, question de noobs, mais je dbute sur cette techno...)

----------


## fr1man

Tu peux jouer avec dans ta partie controleur, o tu as des objets de type HttpSession ou HttpServletRequest, comme dans le bout de code que tu nous montres.
Donc soit tu utilises la session, mais il faut bien penser  vider la session des objets que tu n'utilises plus pour ne pas utiliser de la mmoire.
Soit tu fais comme  prsent en rcuprant les objets d'une requte et en les transfrant  l'autre.

----------


## Julie1987

Merci c'est trs clair, je vais essayer a  ::):

----------

