Boa tarde, Galera !
estou estudando JSF, no momento criando apenas um formulario seguindo um exemplo de um tutorial na net…
Mas estou com um problema na hora da consulta, estou olhando o script a dias e não sei como resolver…
se algum poder me dar uma luz, ou sabe de algum material completo de jsf eu agradeço eu achei um exemplo com hibernet, mas creio
que ainda não está da hora de eu misturar…
Vou colocar aqui apenas os pontos necessários à consulta…
//FacesConfig
</description>
<managed-bean-name>Clic</managed-bean-name>
<managed-bean-class>br.com.integrator.util.CliControler</managed-bean-class>
<managed-bean-scope>session</managed-bean-scope>
</managed-bean>
//Controler
public String efetuaconsulta() throws Exception {
DAO dao = new ClienteDAOImp();
dao.efetuaconsulta();
return "ResultConsult";
}
//Interface DAO
public interface DAO {
void salvar(Cliente cliente) throws Exception;
public String efetuaconsulta() throws Exception;
}
//Manipula Interface
public class ClienteDAOImp implements DAO{
//public class ClienteDAOImp{
private Connection conn;
private static final String ResultConsult = "Sucess";
/*Construtor que se conecta no banco de dados
* @throws java.lang.Exception se não houver
*/
public ClienteDAOImp() throws Exception{
try{
this.conn = ConnectionFactory.getConnection();
}catch(Exception e){
throw new Exception( "Erro: " +
"\n" + e.getMessage( ) );
}
}
public void salvar(Cliente cliente) throws Exception{
PreparedStatement ps = null;
Connection conn = null;
if(cliente == null) throw new Exception("O valor passado não pode ser Nullo");
try {
String SQL = "INSERT INTO cliente(nome, email)"+"values (?,?)";
conn = this.conn;
ps = conn.prepareStatement(SQL);
ps.setString(1,cliente.getNome());
ps.setString(2,cliente.getEmail());
ps.executeUpdate();
}catch(SQLException sqle){
throw new
Exception("Erro ao inserir dados "+sqle);
}finally {
ConnectionFactory.closeConnection(conn,ps);
}
}
//Metodo que efetua consulta e me retorna os clientes
public String efetuaconsulta() throws Exception{
ResultSet rs;
PreparedStatement ps = null;
Connection conn = null;
Statement stm = null;
gerenciaCliente listacliente = null;
if("?" == null) throw new Exception("O valor passado não pode ser Nullo");
try {
stm = conn.createStatement();
rs = stm.executeQuery("select nome,email from cliente where nome = ' ? '");
//Cliente cli = new Cliente();
if (rs.next()){
Cliente cli = new Cliente();
cli.setNome(rs.getString("nome"));
cli.setEmail(rs.getString("email"));
listacliente.adiciona(cli);
}
return ResultConsult;
}catch(SQLException sqle){
throw new
Exception("Erro ao inserir dados "+sqle);
}finally {
ConnectionFactory.closeConnection(conn,ps);
}
}
}
//Consulta
<f:view>
<h:form id="form1">
<h:panelGrid columns="3">
<f:facet name="header">
<h:outputText value="::Consultar Clientes"/>
</f:facet>
<h:outputText value="Nome" />
<h:inputText id="nome" value="#{Clic.cliente.nome}" />
</h:panelGrid>
<h:commandButton value="Consultar" action="#{Clic.efetuaconsulta}" />
<h:commandButton value="Limpar" type="reset" />
<h:commandLink value="Cancelar" action="cancelar" immediate="true" />
</h:form>
</f:view>
Obrigado