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 :

Perte d'attributs mis dans HTTPServletRequest


Sujet :

Struts 2 Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 98
    Par défaut Perte d'attributs mis dans HTTPServletRequest
    Bonjours à toutes et à tous...

    Voilà quelques temps que je suis bloqué en voulant faire passer des attributs de requete (HttpServletRequest et setAttribute) entre deux pages.

    Je remplis la mappe request avec par exemple request.put("test", 5);

    dans la méthode public String execute() throws Exception

    et à l'appel d'une autre méthode déclenchée par une action j'ai perdu la mappe. la valeur request.get("test"); est nulle


    Voici un échantillon de mon fichier xml :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    		<action name="bnf-detail" class="fr.bnf.platon.bnf.actions.ConsultationBnfDetailAction">
            	<result name="success">/pages/bnf/administration/detailBnf.jsp?success=true&amp;id=${bnfId}</result>
    		</action>
     
     
     
    		<action name="bnf-detail_modification" class="fr.bnf.platon.bnf.actions.ConsultationBnfDetailAction" method="modificationSubmit">
            	<result name="success">/pages/bnf/administration/detailBnf.jsp?modification=true&amp;id=${bnfId}</result>
    		</action>

    dans la classe

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
       public String execute() throws Exception
       {
          request.put("test", 58);
          return SUCCESS;
        }
     
       public String modificationSubmit() throws TechniqueException, FonctionnelleException
       {
          request.get("test"); // est null
          editMode = true;
          return SUCCESS;
       }

    Si quelqu'un pouvait me dire si il est possible de passer un attribut en requete d'une JSP à une autre ce serait sympa...

    merci d'avance

  2. #2
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    111
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 111
    Par défaut
    Slt

    Connais-tu Spring ?

    Sinon tu peux toujours utiliser des champs cachés dans tes jsp.

    ++

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2003
    Messages
    98
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2003
    Messages : 98
    Par défaut
    Merci d'avoir répondu

    Mais le souci c'est que l'application est déjà bien avancée et que c'est pas maintenant qu'on va rajouter encore une couche

    Le truc c'est que je me sers de la session pour passer des mots de passe et autre... et franchement c'est pas glamour. D'après la doc (et mes souvenirs de struts 1.x) on pouvait stocker ce genre d'informations en attribut de requete.

    Mais là je ne sais pas comment passer ou récupérer des attributs mis en requete correctement. D'une page à une autre j'ai une nouvelle requete et je perds toutes mes infos

  4. #4
    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
    La request n'est valide que durant une seule requête. Si tu veux mettre des attribust en session, utilises

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     protected Map sessionMap;
     
     public void setSession(final Map session) {
    	sessionMap = session;
        }
    Ce code se trouve dans ma class qui extends ActionSupport et implements PrincipalAware, SessionAware.

    La sessionMap est accessible durant toute la session d'un utilisateur.


    Je tiens à signaler que c'est peut-être pas une bonne idée non plus de mettre les mots de passe en session.

Discussions similaires

  1. [C#] attribut value dans une checkedlistbox
    Par igorzup dans le forum Windows Forms
    Réponses: 14
    Dernier message: 05/04/2006, 09h39
  2. [STRUTS] Avoir l'attribut id dans un select
    Par _beber85 dans le forum Struts 1
    Réponses: 2
    Dernier message: 04/04/2006, 16h40
  3. attribut nillable dans un xsd
    Par SGJ dans le forum Valider
    Réponses: 1
    Dernier message: 21/03/2006, 17h44
  4. [C#][datagrid] perte de l'ascenceur dans un datagrid
    Par mbibim63 dans le forum Windows Forms
    Réponses: 7
    Dernier message: 30/09/2005, 16h19
  5. [HTML][Firefox] Attribut maxlenght dans une balise Text
    Par charlot44 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 13/07/2005, 09h34

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