From a2aca7a8ca75026263bb76e3c1452e71e95eb42c Mon Sep 17 00:00:00 2001 From: CodeSteak Date: Wed, 24 Jun 2020 18:23:01 +0200 Subject: [PATCH 1/2] Clean Shopping Cart on Logout --- .../hso/ecommerce/controller/LoginController.java | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/prototype/src/main/java/org/hso/ecommerce/controller/LoginController.java b/prototype/src/main/java/org/hso/ecommerce/controller/LoginController.java index 94182ce..516bdef 100644 --- a/prototype/src/main/java/org/hso/ecommerce/controller/LoginController.java +++ b/prototype/src/main/java/org/hso/ecommerce/controller/LoginController.java @@ -1,11 +1,5 @@ package org.hso.ecommerce.controller; -import java.util.Optional; - -import javax.servlet.http.HttpServletRequest; -import javax.servlet.http.HttpServletResponse; -import javax.servlet.http.HttpSession; - import org.hso.ecommerce.entities.user.User; import org.hso.ecommerce.repos.user.UserRepository; import org.springframework.beans.factory.annotation.Autowired; @@ -15,6 +9,11 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; +import javax.servlet.http.HttpSession; +import java.util.Optional; + @Controller @RequestMapping("/") public class LoginController { @@ -64,6 +63,8 @@ public class LoginController { @PostMapping("logout") public String logoutPost(HttpServletResponse response, HttpSession session) { session.removeAttribute("userId"); + session.removeAttribute("shoppingCart"); + return "redirect:/"; } } From 577a4f72f0c45ca8a810c2e43f11ac4f91fc4d00 Mon Sep 17 00:00:00 2001 From: CodeSteak Date: Wed, 24 Jun 2020 18:25:42 +0200 Subject: [PATCH 2/2] Clean Shopping Cart on Logout for real --- .../org/hso/ecommerce/controller/LoginController.java | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/prototype/src/main/java/org/hso/ecommerce/controller/LoginController.java b/prototype/src/main/java/org/hso/ecommerce/controller/LoginController.java index 516bdef..1427d89 100644 --- a/prototype/src/main/java/org/hso/ecommerce/controller/LoginController.java +++ b/prototype/src/main/java/org/hso/ecommerce/controller/LoginController.java @@ -1,13 +1,11 @@ package org.hso.ecommerce.controller; +import org.hso.ecommerce.entities.shop.ShoppingCart; import org.hso.ecommerce.entities.user.User; import org.hso.ecommerce.repos.user.UserRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; @@ -61,9 +59,9 @@ public class LoginController { } @PostMapping("logout") - public String logoutPost(HttpServletResponse response, HttpSession session) { + public String logoutPost(@RequestAttribute(value = "shoppingCart") ShoppingCart shoppingCart, HttpSession session) { session.removeAttribute("userId"); - session.removeAttribute("shoppingCart"); + shoppingCart.clear(); return "redirect:/"; }