1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

Autenticação JSP

Bom Dia,

Estou fazendo login em JSP, mas quando o usuário está incorreto não está redirecionando corretamente.

Outro detalhe, o logout não está carregando na servlet.

Login.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Login</title>
    </head>
    <body>
        <h1>Login</h1>

        ${message}  

        <form name="frmLogin" action="servletLogin" method="POST">
            Usuário: <input type="text" name="usuario" value=""><br><br>
            Senha: <input type="text" name="senha" value=""><br><br>
            <input type="submit" name="logar" value="Acessar">
     </form>
    </body>
</html>

Index.jsp

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Bem Vindo</title>
    </head>
    <body>
        <h1>Bem Vindo ${sessionScope.usuario}</h1>
        <a href="servletLogin">Sair</a>
    </body>
</html>

ServletLogin

package servlets;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

public class servletLogin extends HttpServlet {


   protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

      HttpSession session  = request.getSession();
      session.removeAttribute("usuario");
      response.sendRedirect("Login.jsp");

   }

  protected void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {

        String usuario = request.getParameter("usuario");
        String senha = request.getParameter("senha");

        if (usuario.equals("admin") && senha.equals("123")){
            HttpSession session = request.getSession();
            session.setAttribute("usuario", usuario);
            response.sendRedirect("index.jsp");
        }else{
            request.setAttribute("message", "Login inválido");
            request.getRequestDispatcher("login.jsp").forward(request, response);
        }
    }

}
  • Falta de atenção, login na servlet estava minusculo.

    RBR 2013   28 de set de 2015
  • Coloca o seu comentário como resposta e marca como solução... assim sua pergunta sai da lista das não solucionadas

    Ramon Borges   28 de set de 2015
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags login ou faça a sua própria pergunta.