Ich sah hier eine Menge Probleme über das Löschen von Session-Attribute, die gut funktioniert, aber es ist nicht das, was ich will. Vielleicht verstehe ich das falsch.Spring MVC Sitzung löschen Attribut über mehrere Anfragen
Problem: Ich sende zwei Ajax-Anfragen über eine Sitzung. Wenn ich die erste Ajax-Anfrage "RequestA" sende, wird mein Attribut "AtributeA" gelöscht. Ich sehe, dass es innerhalb von hatpSession nicht mehr aufgelistet ist. Wenn ich die zweite Ajax-Anfrage "RequestB" an einen anderen Handler sende, sehe ich immer noch mein Attribut "AtributeA". Sogar der Hash-Wert von diesem Objekt ist der gleiche wie in "RequestA". Vielleicht mache ich etwas falsch oder es ist normales Verhalten?
My-Code von erster Ajax-Anfrage mit Requestmapping: "routeA":
@Controller
@SessionAttributes({"ObjectAA"}){
@RequestMapping("/routeA")
public handlerAA(HttpSession session){
session.removeAttribute("ObjektAA"); //Attribute will be deleted as expected
}
@RequestMapping("/routeB")
public handlerBB(HttpSession session){
session.getAttribute("ObjektAA");
}
}
My-Code durch eine zweite Ajax-Anfrage mit Requestmapping: "Weg b":
@Controller
@SessionAttributes({"ObjectAA"}){
@RequestMapping("/routeA")
public handlerAA(HttpSession session){
session.removeAttribute("ObjectAA");
}
@RequestMapping("/routeB")
public handlerBB(HttpSession session){
session.getAttribute("ObjectAA"); //ObjectAA is still in the session? how could it be?
}
}
Ok, es bedeutet, das ist normales Verhalten, dass Attribute nur auf bestimmten Handler entfernt werden, und nicht auf der ganzen Browser-Sitzung, bis der Browser geschlossen ist oder ich mich ausgeloggt habe. ja –
, es ist ein normales Verhalten –
hhmm .... ich nur diese Dokumentation sehen, und ich bin verwirrt jetzt: Mit @SessionAttributes zum Speichern von Modellattributen in der HTTP-Sitzung ** ** zwischen Anfragen https: // docs. spring.io/spring/docs/3.2.x/spring-framework-referenz/html/mvc.html # mvc-ann-sessionattrib Das ist, was ich brauche, undede von verschiedenen Anfragen, um mein Sestion-Attribut abzurufen. –