IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Struts 2 Java Discussion :

Réafficher les données d'un formulaire dans le même formulaire


Sujet :

Struts 2 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Inscrit en
    Février 2012
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2012
    Messages : 2
    Par défaut Réafficher les données d'un formulaire dans le même formulaire
    Bonjour,

    j'ai un formulaire comprenant notamment un textfield et un optiontransferselect.
    Ces 2 champs sont obligatoires.

    Dans mon action, je vérifie que ces 2 champs sont bien remplis.
    S'ils ne sont pas remplis, je rajoute un addActionError pour chacun des champs et je réaffiche le même formulaire.

    S'il y a une erreur, le formulaire se réaffiche bien, les erreurs aussi. Sauf que le textfield se remplit bien avec la valeur initiale (si elle existe) mais impossible de réafficher la valeur de l'optiontransferselect (si elle ou elles existent).

    Avec firebug, la réponse montre bien la valeur du textfield mais la valeur de l'optiontransferselect est vide.

    Dans l'action, j'ai bien tous les attributs et les getter/setter, je n'ai rien écrit de plus pour le textfield que pour l'optiontransferselect.

    Comment réafficher ces valeurs ??? (sans les mettre explicitement dans la session)

    Merci beaucoup

    PS: quand tous les champs sont remplis, mes actions se déroulent bien. C'est juste pour ne pas avoir à réécrire en cas d'erreurs

  2. #2
    Nouveau candidat au Club
    Inscrit en
    Février 2012
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : Février 2012
    Messages : 2
    Par défaut Transformer string en list
    Alors je vais répondre à ma propre question car ça peut toujours servir à quelqu'un d'autre.

    L'action récupère les données du formulaire sous forme de String.

    Les valeurs du textfield se ré-affichent bien toutes seules car l'action récupère un String et la jsp affiche un String. Comme le nom du String est le même dans l'action et dans la jsp, tout marche bien.

    Dans l'optiontransferselect, l'action récupère un String alors la jsp affiche les valeurs sous forme d'une liste. La jsp ne ré affiche pas les valeurs car la liste de valeurs à afficher n'existe pas.

    Pour que les valeurs d'un optiontransferselect se ré affichent:
    dans l'action on déclare comme attribut une liste de String qui a le même nom que le doubleList de l'optiontransferselect, on lui fait son get et son set, et après on lui donne comme valeur le doubleName transformé en liste.

    Je n'ai pas encore réussi à faire la même chose avec un select ou un s:select.
    Si vous savez comment faire, je prends toutes infos.

    PS: désolée si je n'utilise pas les bonnes terminologies mais je viens juste de commencer en java et en struts

  3. #3
    Membre chevronné Avatar de ruscov
    Homme Profil pro
    Architecte de système d'information
    Inscrit en
    Mars 2007
    Messages
    347
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de système d'information

    Informations forums :
    Inscription : Mars 2007
    Messages : 347
    Par défaut
    regarde du côté de la méthode prepare() à implémenter dans ton action si je me souviens bien.

Discussions similaires

  1. Réponses: 2
    Dernier message: 13/10/2008, 14h39
  2. Réponses: 0
    Dernier message: 12/05/2008, 19h40
  3. Réponses: 2
    Dernier message: 02/03/2007, 21h38
  4. Réafficher les données d'un formulaire
    Par Ashitaka dans le forum Langage
    Réponses: 13
    Dernier message: 16/10/2006, 15h05
  5. Réponses: 7
    Dernier message: 21/09/2006, 08h44

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo