Aplicação WEB - Cadastrar no BD

0 respostas
E

Srs. Montei uma aplicação básica para estudo e estou tendo dificuldades para fazer a mesma funcionar corretamente. A primeira versão eu fiz usando apenas string nos atributos ref ao representante e funcionaram corretamente todas as funções CRUD.

Agora inventei de mudar os tipos e não esta funcionando. Após digitar as informações no formulário JSP e acionar o cadastrar a pagina fica em branco em não cadastra nada no BD, entendo que há algo errado no (RepresentanteServlet).

Será que alguém pode dar uma dica do que pode e/ou esta errado? Qualquer critica, sugestão será bem vinda.

Segue os trechos dos arquivos:

RepresentanteServlet.java

package PacoteServlet;

import PacoteDAO.*;
import PacoteBean.*;

import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class RepresentanteServlet extends HttpServlet {
    
    private long cpf=0;
    private long rg=0;
    private long licenca=0;
    private String nome=null;
    private String contato=null;
    private int acao = 0;
    
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
    throws ServletException, IOException {
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();

        acao = Integer.parseInt(request.getParameter("acao"));

        if(acao == 1){
            try {
                cpf = Long.parseLong (request.getParameter("txt_cpf"));
                rg = Long.parseLong (request.getParameter("txt_rg"));
                licenca = Long.parseLong (request.getParameter("txt_licenca"));
                nome = request.getParameter("txt_nome");
                contato = request.getParameter("txt_telefone");
                
                RepresentanteBean cb = new RepresentanteBean();            
                
                cb.setCpf(cpf);
                cb.setRg(rg);
                cb.setLicenca(licenca);
                cb.setNome(nome);
                cb.setContato(contato);
                
                DAO com = new DAO();
                if(com.CadRepresentante(cb)) response.sendRedirect("representante.jsp");
            
            } catch(Exception e) {
                System.out.print("erro:"+e);
            }
        }

DAO.java
Obs: Neste arquivo o import java.sql.PreparedStatement e o import java.sql.ResultSet estão sinalizandos para mim como (importação não utilizada). Será o suposto problema?

package PacoteDAO;

import Fabrica.FabricaConexao;
import PacoteBean.*;
import com.mysql.jdbc.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

public class DAO {
  private Connection con = null;
  public DAO(){
    try{
        con = FabricaConexao.getConnection();
       }
    catch(Exception e){
      System.out.println("erro");
    }
  }
  
  //INICIO DAS FUNÇÕES REPRESENTANTE
  //CADASTRO DO REPRESENTANTE
  public boolean CadRepresentante(RepresentanteBean cb){
    try{
       String query = "INSERT INTO representante" +
       "(CPF, RG, Licenca, Nome, Contato)" + "VALUES(?,?,?,?,?)";
       
      java.sql.PreparedStatement stm = con.prepareStatement(query);
      
      stm.setLong(1, cb.getCpf());
      stm.setLong(2, cb.getRg());
      stm.setLong(3, cb.getLicenca());
      stm.setString(4, cb.getNome());
      stm.setString(5, cb.getContato());
           
      boolean result = !stm.execute();
      return result;
    }
    catch(SQLException e){
        System.out.print("Não foi possível cadastrar o representante" + e);
        return false;
    }
  }

Desde já agradço a atenção!
[]'s

Criado 6 de novembro de 2008
Respostas 0
Participantes 1