Olá, não estou conseguindo criar um servlet para logout de uma página (neste caso zerando o tempo do cookie). Ele chega a retornar a mensagem de usuário deslogado, mas consultando o console ainda aparece usuario.logado (nome do meu cookie):
Logout:
package br.com.alura.gerenciador;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet(urlPatterns = "/logout")
public class Logout extends HttpServlet{
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
Cookie[] cookies = req.getCookies();
PrintWriter write = resp.getWriter();
if (cookies != null){
for (Cookie cookie : cookies) {
if (cookie.getName().equals("usuario.logado")){
cookie.setMaxAge(0);
}
}
write.println("<html><body>usuario deslogado</body></html>");
}else{
write.println("<html><body>nenhum usuario logado</body></html>");
}
}
}
HTML
<html>
<body>
Bem vindo ao nosso gerenciador de empresas!<br/>
<form action = "busca">
Nome:<br/>
<input type="text" name="nome"><br/>
<input type="submit" value="enviar">
</form>
Cadastra empresa:<br/>
<form action = "cadastra" method = "post">
Nome:<br/>
<input type="text" name="nome"><br/>
<input type="submit" value="enviar">
</form>
<form action="login" method="post">
Email: <input type="text" name="email" /><br />
Senha: <input type="password" name="senha" /><br />
<input type="submit" value="Login" />
</form>
<form action="logout" method="post">
<input type="submit" value="Logout" />
</form>
</form>
</body>
</html>