Oi pessoal,tenho numa pagina dois inputtext,um que tem o código do cliente e outro que recebe o nome do cliente a partir do código que esta no outro input.O problema é que quando digito o código para exibir o nome,as vezes o nome aparece e as vezes não, outras vezes acusa que o cliente não existe,abaixo o código:
dao
public String nomecliente(Integer codigo){
Conexao conexao=new Conexao();
String retorno="falha";
Orcamentos orcamentos=new Orcamentos();
try{
Statement St=(Statement)conexao.getConn().createStatement();
ResultSet Rs=St.executeQuery("select * from clientes where codigo like "+codigo);
if(Rs.next()){
orcamentos.setCliente(Rs.getInt("codigo"));
orcamentos.setNome_cliente(Rs.getString("nome"));
retorno="sucesso";
}
}
catch(Exception Erro){
Erro.printStackTrace();
}
return retorno;
}
Bean
public void nomecliente(ValueChangeEvent event){
OrcamentosDAO orcamentosdao=new OrcamentosDAO();
FacesContext msg=FacesContext.getCurrentInstance();
String retorno=orcamentosdao.nomecliente(orcamento.getCliente());
event.getNewValue();
if (retorno.equals("sucesso")){
msg.addMessage(null,new FacesMessage(FacesMessage.SEVERITY_INFO,"Cliente encontrado"+orcamento.getNome_cliente(),null));
}
else{
msg.addMessage(null,new FacesMessage(FacesMessage.SEVERITY_ERROR,"Cliente não existe",null));
}
}
e aqui o html da pagina(Estou usando primefaces)
<p:inputText valueChangeListener="#{orcamentosBean.nomecliente}" value="#{orcamentosBean.orcamento.cliente}" style="width: 12em;"><p:ajax event="blur" process="@this" update="aviso"/></p:inputText>
