Bom dia !
Alguém sabe me dizer:
Tenho as classes :
login.jsp
Manager Beans : login.java - visão
validaLogin.java - Controle
LoginDAO - persistencia.
do login.jsp eu mando as entradas para a classe login.java que é meu manager bean, do login.java eu mando os atributos nome e senha para a classe validaLogin que tem um método statico, agora quando tento instanciar um objeto to tipo LoginDAO e chamo o método para passar nome e senha não aparece o método para enviar o nome e senha
para verificar no banco, alguém sabe o motivo.
metodo estatico no managerbean?
como está passando os dados pro servidor? por ajax?
cola teu MB ae…
Manager Bean
import puc.controle.ValidaLogin;
import java.awt.event.ActionEvent;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
/**
*
* @author welder
*/
@ManagedBean
@RequestScoped
public class Login {
private String nome;
private String senha;
private boolean validaLogin;
public Login() {
}
/**
* validação do nome e senha sem segurança
*/
public boolean validarLogin(ActionEvent event) {
if (ValidaLogin.validar(this.getNome(), this.getSenha())) {
validaLogin = true;
} else {
validaLogin = false;
}
return validaLogin;
}
public String getNome() {
return nome;
}
public void setNome(String nome) {
this.nome = nome;
}
public String getSenha() {
return senha;
}
public void setSenha(String senha) {
this.senha = senha;
}
/**
* @return the validaLogin
*/
public boolean isValidaLogin() {
return validaLogin;
}
/**
* @param validaLogin the validaLogin to set
*/
public void setValidaLogin(boolean validaLogin) {
this.validaLogin = validaLogin;
}
}
-----------------------------------------------------------------------------------------------------------------
ValidaLogin - controle
package puc.controle;
public class ValidaLogin {
public static boolean validar(String nome, String senha) {
if (nome.equalsIgnoreCase(nome) && senha.equalsIgnoreCase(senha)) {
/**
* implementar a segurança aqui
*/
return true;
} else {
return false;
}
}
}
------------------------------------------------------------------------------------------
LoginDAO - persistencia
package puc.persistencia;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import puc.visao.Usuario;
/
public class LoginDAO {
public boolean autenticar(String nome, String senha) {
boolean autenticado = false;
Usuario usuario = new Usuario();
Connection con = Conexao.conectar();
try {
String consulta = "SELECT nome,senha FROM usuario WHERE nome = ? AND senha = ?";
PreparedStatement pst = con.prepareStatement(consulta);
pst.setString(1, usuario.getNome());
pst.setString(2, usuario.getSenha());
ResultSet rs = pst.executeQuery();
if (rs.next()) {
usuario.setNome(rs.getString("nome"));
usuario.setSenha(rs.getString("senha"));
autenticado = true;
} else {
autenticado = false;
}
} catch (SQLException ex) {
ex.printStackTrace();
}
return autenticado;
}
}
Quando instancio um objeto do tipo LoginDAO dentro da classe ValidaLogin não consigo pois quero passar os dados pra o loginDAO
verificar nome e senha no banco de daos e retorna para a classe ValidaLogin que retorna para login e assim eu tratar essa mensagem na tela jsp.