Ist es möglich, auf mit Spring MVC kommentierte Sitzungsvariablen auf mehreren Controllern zuzugreifen?
Ich habe eine Web-App, auf der Spring 3.0 ausgeführt wird und die Spring-MVC verwendet. Ich habe ein paar Controller wie folgt eingerichtet:
@Controller
@RequestMapping("/admin")
@SessionAttributes({"clientLogin", "selectTab", "user", "redirectUrl"})
public class AdminController {
...
}
@Controller
@SessionAttributes({"clientLogin", "selectTab", "user", "redirectUrl"})
public class PublicController {
....
}
Ich kann die mit Annotationen versehenen Variablen mit so etwas wie @ zur ModelMap hinzufüge
map.addAttribute("user", "Bob");
Das funktioniert gut, um die Variable im aktuellen Controller beizubehalten. Ich kann aus der modelMap von jeder anderen Methode in diesem Controller auf die Variable zugreifen. Wenn der Benutzer jedoch eine Seite in einem anderen Controller aufruft, ist dieselbe Variable im zweiten Controller nicht verfügbar, obwohl sie in den @ SessionAttributes aufgeführt ist.
Ist es möglich, mit den Annotationen über mehrere Controller auf diese mit Annotationen versehenen Variablen zuzugreifen?