Supprimer les cookies à partir d'une servlet réponse

Je voudrais savoir comment faire pour supprimer un cookie dans un HttpServletResponse de Spring MVC. J'ai la méthode de login où je créer le cookie et la déconnexion lorsque je veux le supprimer, mais il ne fonctionne pas.

Voici le code:

@RequestMapping(method = RequestMethod.POST)
public ModelAndView Login(HttpServletResponse response, String user, String pass) {     
    if (user != null && pass != null && userMapper.Users.get(user).getPass().equals(pass)){
        Cookie cookie = new Cookie("user", user);
        cookie.setPath("/MyApplication");
        cookie.setHttpOnly(true);
        cookie.setMaxAge(3600);
        response.addCookie(cookie);
        Map model = new HashMap();
        model.put("user", user);
        return new ModelAndView("home", "model", model);
    }
    return new ModelAndView("login");
}

@RequestMapping(value="/logout", method = RequestMethod.POST)
public ModelAndView Logout(HttpServletRequest request, HttpServletResponse response) {     

        Cookie[] cookies = request.getCookies();
        for(int i = 0; i< cookies.length ; ++i){
            if(cookies[i].getName().equals("user")){
                //Cookie cookie = new Cookie("user", cookies[i].getValue());
                //cookie.setMaxAge(0);
                //response.addCookie(cookie);
                cookies[i].setMaxAge(0);
                response.addCookie(cookies[i]);
                break;
            }
        } 
        return new ModelAndView("login");
 }

J'ai pensé qu'il était nécessaire de changer le maxAge, mais dans le navigateur, le cookie ne changent pas. J'ai même essayé de réécrire un cookie avec le même nom dans le commentaire, mais il ne fonctionne pas non plus.

  • ont u essayé de cookie.setvalue("")??
  • double possible de Comment supprimer un Cookie dans un Servlet Java
  • oui, le setValue("") ne fonctionne pas non plus...
  • Le code commenté avec new Cookie() devrait fonctionner, en plus de définir le même domaine de cookie.
InformationsquelleAutor Cruz | 2012-03-22