Witajcie,
Mam problem z integracją Controllera z warstwą dostępu do danych. Poniżej mój controller.
@Controller
@RequestMapping("/user/{username}")
public class UserController {
private UserService userService;
private LoginService loginService;
@Autowired
public UserController(UserService userService, LoginService loginService) {
this.userService = userService;
this.loginService = loginService;
}
@ModelAttribute("user")
protected User user(@PathVariable("username") String username) {
return this.userService.getUser(username);
}
@RequestMapping("/addLogin")
public String edit(User user) {
user.addLogin(new Login(new Date()));
return "redirect:/added";
}
}
Problem w tym, że w momencie wykonywania metody edit(), sesja jest już zakończona, dlatego metoda addLogin() wyrzuca wyjątek. Dlaczego tak się dzieje jest dla mnie wpełni zrozumiałe, ale zastanawiam się jak ominąć ten problem. Jak wy organizujecie controllery i warstwy serwisowe żeby nie mieć takich problemów?
Liczę na wasze wskazówki, porady :D