probleme d'intialisation de session struts 2

Résolu
abdouffff Messages postés 23 Date d'inscription samedi 21 janvier 2012 Statut Membre Dernière intervention 4 mars 2012 - 4 mars 2012 à 07:35
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 4 mars 2012 à 12:01
bonjour,
j'ai un probleme de session pour afficher des article a partir la session la premier article et afficher mais lorsque j'ajoute un nouveau article la premier sera écraser donc la session initialiser je ne sais pas pourquoi voila mon code en action et merci de m'aider

public String ajouter( )

{ Map<String , Object> session = ActionContext.getContext().getSession();
float x=Float.valueOf(prix.trim()).floatValue();


listPanier.add(idPanier);
listPanier.add(nom);
listPanier.add(x);
listPanier.add(quantite);

listPanier111.add(listPanier);
session.put("listPanier111", listPanier111);

return SUCCESS;
}

3 réponses

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 369
4 mars 2012 à 09:43
Bonjour,

Je ne comprend pas d'où sort la variable listPanier111 ?

Je dirait qu'il faut que tu l'initialises avec le contenu de la variable listPanier111 enregistré dans la session
3
abdouffff Messages postés 23 Date d'inscription samedi 21 janvier 2012 Statut Membre Dernière intervention 4 mars 2012
4 mars 2012 à 10:44
merci, Julian il n'a aucune sens issu .
j'arriver a trouver la solution la problème parce que la session ici est un map couple (clés, valeur) et la clés reste la même lorsque j'ajouter un nouveau article .donc seulement la valeur sera change et la premier sera écrase donc il faut ajouter un nouveau clés différent a la 1 er (une autre liste par exemple ou trouver un autre solution pour changer la clé a chaque ajout )
0
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 369
4 mars 2012 à 12:01
Oui, il faut que toutes tes variables aient un nom différent. J'ai l'impression que tu utilises mal la session. Ce n'est pas fait pour enregistrer un grand nombre de données : pour cela, utilises une bdd.

Si tu veux créer un panier, il vaut mieux le mettre dans la base de données, l'utilisateur pourra le récupérer lors de sa prochaine connexion et tu n'auras pas ce genre de problème.

Si tu tiens vraiment à le mettre dans la session, tu vas être obligé d'enregistrer une arrayList dans la session.
0
Rejoignez-nous