2010-09-15 8 views
0

Dans mon action de construction, j'ai un objet que je mets dans ma carte de session.Struts2 forme pour mettre à jour l'objet dans la carte de session?

InputField testField = new InputField(); 
testField.setName("testName"); 
testField.setValue("testValue"); 
sessionMap.put("TEST_FIELD", testField); 

Dans la JSP, je souhaite créer un champ de texte à l'aide de cet objet. Après l'envoi de ce formulaire, je voudrais mettre à jour la session avec la nouvelle valeur du champ de texte.

Et après avoir rempli le champ de texte et soumis le formulaire dont il fait partie, ce 'testResult' contient toujours la valeur d'origine à partir de la construction de l'objet.

String testResult = ((InputField) sessionMap.get("TEST_FIELD")).getValue(); 

>> testValue 

Où est-ce que je vais mal?

Merci!

Répondre

1

Votre action devrait gérer la validation de votre «valeur de champ de test» et la définition de la valeur dans la session en conséquence.

Vous ne pouvez pas enregistrer des valeurs directement dans votre session. Si vous pouviez, ce serait un cauchemar de sécurité.