Forma de pesquisar em java web

9 respostas
C

Estou realizando um projeto para meu estagio, e nele tenho que fazer uma busca por nome simples, mas como estou iniciando estou emperrando em algumas coisas, gostaria de saber aonde está meu erro, pois quando eu vou realizar a busca da erro..

Codigo ClienteBD(ClienteDAO).. Metodo de busca
public Cliente buscaporNome(String nome)throws Exception{  
            OpenDatabase();  
            String SQL= "select * "  
                    + "from cliente "  
                    + "where nome like '%?%'";  
            pstmt=con.prepareStatement(SQL);  
            pstmt.setString(1,nome);  
            rs=pstmt.executeQuery();  
            Cliente c= new Cliente();  
            while(rs.next()){  
              c.setCod_cliente(rs.getInt("cod_cliente"));  
              c.setNome(rs.getString("nome"));  
              c.setCpf(rs.getString("cpf"));  
              c.setRg(rs.getString("rg"));  
              c.setRua(rs.getString("rua"));  
              c.setBairro(rs.getString("bairro"));  
              c.setCidade(rs.getString("cidade"));  
              c.setNumero_casa(rs.getString("numero_casa"));  
              c.setTelefone(rs.getString("telefone"));  
            }  
              
                return c;  
        }

Codigo clienteControle

else if(action.equalsIgnoreCase("buscaporNome")){             
      try{  
            String nome=request.getParameter("nome");  
            ClienteBD cb = new ClienteBD();  
            Cliente c = cb.buscaporNome(nome);    
            if(c.getNome()!= null){  
            cb.buscaporNome(nome);     
            request.getRequestDispatcher("clientesConsulta.jsp").forward(request, response);  
           }else   
            request.setAttribute("msg", "Cliente não encontrado");  
            request.getRequestDispatcher("clientes.jsp").forward(request, response);   
            }catch(Exception e){  
                out.print("Erro:"+e.getMessage());            
        }  
        
                     }
e por fim o pequeno formulario para fazer a pesquisa
<form action="clienteControle.jsp?action=buscaporNome" method="post">  
             <label for="nome">Digite o nome:</label><br />  
             <input type="text" name="nome" value="" />  
             <input type="hidden" value="nome" nome="nome" />  
             <input type="submit" value="Buscar" /><br /><br />  
             </form>

E O ERRO É ESSE descriptionThe requested resource () is not available.

Espero que possam me ajudar, desde ja eu agradeço a todos, sou iniciante;

9 Respostas

Hebert_Coelho

Como iniciante você deve ler as regras e normas de onde você frequenta.

Não duplique seus posts, vai contra as regras do forum: http://www.guj.com.br/java/291159-metodo-busca---java-web

Caso alguém não tenha respondido no seu post original, coloque algo como “alguém?”. Aprenda a esperar.

R

Ja peguei problemas com isso:

String SQL= "select * "    
                   + "from cliente "    
                   + "where nome like '%?%'";

Nao coloque a ? entre aspas , e nem o simbolo de porcentagem deve ir na string caso voce esteja setando os parametros por fora.

Coloque as aspas e a porcentagem onde voce seta sua string, exemplo:

String SQL= "select * "    
                   + "from cliente "    
                   + "where nome like ? ";    
           pstmt=con.prepareStatement(SQL);    
           pstmt.setString(1, "'%" + nome + "%'");
A

Apenas uma pequena correção: não deve colocar aspas, apenas o % mesmo.

C

AbelBueno:
rof20004:

Coloque as aspas e a porcentagem onde voce seta sua string, exemplo:

Apenas uma pequena correção: não deve colocar aspas, apenas o % mesmo.

continuou dando o mesmo erro.

C

alguem?

R

Tem como postar toda a mensagem de erro ? a que aparece no console do seu servidor de aplicacao.

C

resolvido

Hebert_Coelho

coyotegt:
resolvido
Coloca a solução do problema aqui para ajudar outros. [=

C

public Cliente buscaporNome(String nome)throws Exception{ OpenDatabase(); String SQL= "select * " + "from cliente " + "where nome like ?"; pstmt=con.prepareStatement(SQL); pstmt.setString(1,'%'+nome+'%');

e também estava errado a link da action, estava ClienteControle e era ControleCliente…

ÁREA DE PESQUISA DE CLIENTES<br /><br /> <form action="controleCliente.jsp?action=busca" method="post"> <label for="nome">Digite o nome:</label><br /> <input type="text" name="nomeBusca" id="nomeBusca" value="" /> <input type="submit" value="Buscar" /><br /><br /> </form>

Criado 11 de janeiro de 2013
Ultima resposta 14 de jan. de 2013
Respostas 9
Participantes 4