Apenas avisar que há um erro no enunciado.
Em "Criaremos a servlet e funcionalidade de login. Para isso crie primeiro uma servlet chamada Login e implemente o método doGet." deveria ser doPost ao invés de doGet.
Apenas avisar que há um erro no enunciado.
Em "Criaremos a servlet e funcionalidade de login. Para isso crie primeiro uma servlet chamada Login e implemente o método doGet." deveria ser doPost ao invés de doGet.
Obrigado Gabriel!
Olá,
Estou recebendo o seguinte erro:
HTTP Status 404 - /gerenciador/login
type Status report
message /gerenciador/login
description The requested resource is not available.
Apache Tomcat/8.0.30
Segue o código das minhas classes
package br.com.alura.gerenciador.web;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import br.com.alura.gerenciador.Usuario;
import br.com.alura.gerenciador.dao.UsuarioDAO;
@WebServlet(urlPatterns = "/login")
public class Login extends HttpServlet{
protected void doPost(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException {
String email = req.getParameter("email");
String senha = req.getParameter("senha");
Usuario usuario = new UsuarioDAO().buscaPorEmailESenha(email, senha);
PrintWriter writer = resp.getWriter();
if (usuario==null){
writer.println("<html><body>Usuário Inválido</html></body>");
}else{
writer.println("<html><body>Usuário Logado: " + email +" </html></body>");
}
}
}
Bem vindo ao nosso gerenciador de empresas!<br/>
form action="novaEmpresa" method="POST"
Nome: input type="text" name="nome"
input type="submit" value="Enviar"
form action="login" method="POST"
Email: input type= "email" name="email"
Senha: input type="password" name="senha"
input type="submit" value="Enviar"
Olá Raquel, tudo bem?
Editei a sua pergunta para formatar o seu código Java, tudo bem? Assim fica mais fácil a leitura.
Sobre o problema, você consegue acessar qualquer outra url da sua aplicação de teste? O seu form está correto e o urlPatterns também.
Outro detalhe: A sua aplicação está com o contexto gerenciador mesmo? Dependendo da sua configuração a url seria:
http://localhost:8080/gerenciador/login
ou
http://localhost:8080/login
Abs!
Ei Alexandre, tudo bem e vc?
Ah sim... nem sabia que dava para formatar... Obrigada!
Sim, eu consigo acessar as urls, esse erro acontece depois que eu clico no botão Enviar.
Acesso usando essa url
Olá Raquel!
Hmm, neste caso o seu contexto está configurado para acessar gerenciador. Você já tem alguma outra classe configurada com @WebServlet?
Olá Alexandre,
Sim, tenho as classes dos exercicios anteriores: BuscaEmpresa e NovaEmpresa
Raquel ,
em cima do método doPost , coloque a anotação @Override
assim está demonstrando que aquele métodos está sobre escrevendo o método doPost da classe HttpServlet .
do jeito que está acredito que ele esteja buscando o doPost da classe HttpServlet .
faça o teste , qualquer coisa coloque novamente o erro aqui .
Olá Celso, No meu código já está com o @Override em cima do doPost. Acho que na hora de colar saiu sem.
Abraços
Raquel,
como que está seu arquivo index ?
<html>
<body>
Bem vindo ao nosso gerenciador de empresas!<br/>
<form action="novaEmpresa" method="POST">
Nome: <input type="text" name="nome">
<input type="submit" value="Enviar">
</form>
<form action="login" method="POST">
Email: <input type= "email" name="email"/>
Senha: <input type="password" name="senha"/>
<input type="submit" value="Enviar"/>
</form>
</body>
</html>
Olá Celso, Não sabia direito como formatar para aparecer o código... tem umas aspas a mais aí... Abraços
ué, sumiram algumas partes do código...
<'html>
<'body>
Bem vindo ao nosso gerenciador de empresas!<br/>
<'form action="novaEmpresa" method="POST">
Nome: <'input type="text" name="nome">
<'input type="submit" value="Enviar">
<'/form>
<'form action="login" method="POST">
Email: <'input type= "email" name="email"/>
Senha: <'input type="password" name="senha"/>
<'input type="submit" value="Enviar"/>
<'/form>
<'/body>
<'/html>
Raquel ,
Achei seu erro
na classe Login , no if está do seguinte jeito :
if (usuario==null){
writer.println("<html><body>Usuário Inválido</html></body>");
}else{
writer.println("<html><body>Usuário Logado: " + email +" </html></body>");
}
repare que você está fechando o html antes de fechar o body , altere isso e verifica se vai funcionar .
no caso terá que ser assim
if (usuario==null){
writer.println("<html><body>Usuário Inválido</body></html>");
}else{
writer.println("<html><body>Usuário Logado: " + email +" </body></html>");
}
Espero ter ajudado .
Ei Celso!
Funcionou! Era isso mesmo!!! Obrigada!
Abraços!
Pessoal boa tarde todos os meu "imports" não estao sendo reconhecidos pelo eclipse , mesmo eu reescrevendo-os um a um usando ctrl 1 nada ta funcionando = ( alguem tem alguma dica ? Att.