Bom dia, sempre estou aqui no guj tirando minha duvidas, e hoje não é diferente kkk, estou com um problema com meu banco. Estou fazendo um sistema web  de denuncia, nesse sistema ja tem a tabela cliente com id, nome, telefone, cpf, endereço, até aqui está funcionando. Só que na tela denuncia onde tem os atributos, idD, endeD, fotoD, tioD, e a chave estrangeira do cliente, não cadastrado, ele não mostra erros só não vai pro banco, alguém pode me tirar essa duvida, pois quero cadastrar uma denuncia e nela pegar o ID do cliente, dai quando for gerado o relatória terá todos os dados do cliente e da denuncia.
Amigo aqui esta as classes, a primeira é Cliente DAO
public class ClienteDAO {
public void salvar(Cliente c) throws SQLException {
StringBuffer sql = new StringBuffer();
sql.append("INSERT INTO cliente ");
sql.append("( nome, endereco, cpf, telefone) ");
sql.append(" VALUES (?, ?, ?, ?)");
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setString(1, c.getNome());
comando.setString(2, c.getEndereco());
comando.setString(3, c.getCpf());
comando.setString(4, c.getTelefone());
comando.executeUpdate();
}
public void excluir(Cliente c) throws SQLException {
StringBuffer sql = new StringBuffer();
sql.append("DELETE FROM cliente ");
sql.append("WHERE   CodigoCliente = ? ");
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setLong(1, c.getCodigoCliente());
comando.executeUpdate();
}
public void editar(Cliente c) throws SQLException {
StringBuilder sql = new StringBuilder();
sql.append("UPDATE cliente ");
sql.append("SET nome= ? , endereco = ? , cpf =? , telefone= ? ");
sql.append("WHERE CodigoCliente = ?");
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setString(1, c.getNome());
comando.setString(2, c.getEndereco());
comando.setString(3, c.getCpf());
comando.setString(4, c.getTelefone());
comando.executeUpdate();
}
public Cliente buscarPorCodigo(Cliente c) throws SQLException {
StringBuilder sql = new StringBuilder();
sql.append("SELECT  CodigoCliente, nome , cpf, endereco, telefone ");
sql.append("FROM cliente ");
sql.append("WHERE CodigoCliente = ?");
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setLong(1, c.getCodigoCliente());
ResultSet resultado = comando.executeQuery();
Cliente retorno = null;
if (resultado.next()) {
    retorno = new Cliente();
    retorno.setCodigoCliente(resultado.getLong("codico"));
    retorno.setNome(resultado.getString("nome"));
    retorno.setCpf(resultado.getString("cpf"));
    retorno.setEndereco(resultado.getString("endereco"));
    retorno.setTelefone(resultado.getString("telefone"));
}
return retorno;
}
public ArrayList listar() throws SQLException {
StringBuffer sql = new StringBuffer();
sql.append("SELECT CodigoCliente , nome , cpf, endereco , telefone ");
sql.append("FROM cliente ");
sql.append("ORDER BY nome ASC");
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
ResultSet resultado = comando.executeQuery();
ArrayList<Cliente> lista = new ArrayList<Cliente>();
while (resultado.next()) {
    Cliente c = new Cliente();
    c.setNome(resultado.getString("nome"));
    c.setCpf(resultado.getString("cpf"));
    c.setEndereco(resultado.getString("endereco"));
    c.setTelefone(resultado.getString("telefone"));
    c.setCodigoCliente(resultado.getLong("codigoCliente"));
    lista.add(c);
}
return lista;
}
public ArrayList buscarPorNome(Cliente c) throws SQLException {
StringBuffer sql = new StringBuffer();
sql.append("SELECT CodigoCliente , nome, cpf , endereco, telefone ");
sql.append("FROM cliente ");
sql.append("WHERE nome LIKE ?");
sql.append("ORDER BY  nome ASC");
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setString(1, "%" + c.getNome() + "%");
comando.setString(2, "%" + c.getCpf() + "%");
comando.setString(3, "%" + c.getEndereco() + "%");
comando.setString(4, c.getTelefone());
ArrayList<Cliente> lista = new ArrayList<Cliente>();
comando.setString(1, c.getNome());
comando.setString(2, c.getCpf());
comando.setString(3, c.getEndereco());
comando.setString(4, c.getTelefone());
ResultSet resultado = comando.executeQuery();
while (resultado.next()) {
    Cliente item = new Cliente();
    item.setCodigoCliente(resultado.getLong("codico"));
    item.setNome(resultado.getString("nome"));
    item.setCpf(resultado.getString("cpf"));
    item.setEndereco(resultado.getString("endereco"));
    item.setTelefone(resultado.getString("telefone"));
    lista.add(item);
}
return lista;
}
}
e a classe DenunciaDAO
package br.com.sam.dao;
import br.com.sam.damain.Cliente;
import br.com.sam.factory.ConexaoFactory;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.logging.Level;
import java.util.logging.Logger;
/**
*
@author alexandre
*/
public class ClienteDAO {
public void salvar(Cliente c) throws SQLException {
StringBuffer sql = new StringBuffer();
sql.append(“INSERT INTO cliente “);
sql.append(”( nome, endereco, cpf, telefone) “);
sql.append(” VALUES (?, ?, ?, ?)”);
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setString(1, c.getNome());
comando.setString(2, c.getEndereco());
comando.setString(3, c.getCpf());
comando.setString(4, c.getTelefone());
comando.executeUpdate();
}
public void excluir(Cliente c) throws SQLException {
StringBuffer sql = new StringBuffer();
sql.append("DELETE FROM cliente ");
sql.append("WHERE   CodigoCliente = ? ");
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setLong(1, c.getCodigoCliente());
comando.executeUpdate();
}
public void editar(Cliente c) throws SQLException {
StringBuilder sql = new StringBuilder();
sql.append("UPDATE cliente ");
sql.append("SET nome= ? , endereco = ? , cpf =? , telefone= ? ");
sql.append(“WHERE CodigoCliente = ?”);
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setString(1, c.getNome());
comando.setString(2, c.getEndereco());
comando.setString(3, c.getCpf());
comando.setString(4, c.getTelefone());
comando.executeUpdate();
}
public Cliente buscarPorCodigo(Cliente c) throws SQLException {
StringBuilder sql = new StringBuilder();
sql.append("SELECT  CodigoCliente, nome , cpf, endereco, telefone ");
sql.append("FROM cliente ");
sql.append(“WHERE CodigoCliente = ?”);
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setLong(1, c.getCodigoCliente());
ResultSet resultado = comando.executeQuery();
Cliente retorno = null;
if (resultado.next()) {
 retorno = new Cliente();
 retorno.setCodigoCliente(resultado.getLong("codico"));
 retorno.setNome(resultado.getString("nome"));
 retorno.setCpf(resultado.getString("cpf"));
 retorno.setEndereco(resultado.getString("endereco"));
 retorno.setTelefone(resultado.getString("telefone"));
}
return retorno;
}
public ArrayList listar() throws SQLException {
StringBuffer sql = new StringBuffer();
sql.append("SELECT CodigoCliente , nome , cpf, endereco , telefone ");
sql.append("FROM cliente ");
sql.append(“ORDER BY nome ASC”);
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
ResultSet resultado = comando.executeQuery();
ArrayList lista = new ArrayList();
while (resultado.next()) {
 Cliente c = new Cliente();
 c.setNome(resultado.getString("nome"));
 c.setCpf(resultado.getString("cpf"));
 c.setEndereco(resultado.getString("endereco"));
 c.setTelefone(resultado.getString("telefone"));
 c.setCodigoCliente(resultado.getLong("codigoCliente"));
 lista.add(c);
}
return lista;
}
public ArrayList buscarPorNome(Cliente c) throws SQLException {
StringBuffer sql = new StringBuffer();
sql.append("SELECT CodigoCliente , nome, cpf , endereco, telefone ");
sql.append("FROM cliente ");
sql.append(“WHERE nome LIKE ?”);
sql.append(“ORDER BY  nome ASC”);
Connection conexao = ConexaoFactory.conectar();
PreparedStatement comando = conexao.prepareStatement(sql.toString());
comando.setString(1, “%” + c.getNome() + “%”);
comando.setString(2, “%” + c.getCpf() + “%”);
comando.setString(3, “%” + c.getEndereco() + “%”);
comando.setString(4, c.getTelefone());
ArrayList lista = new ArrayList();
comando.setString(1, c.getNome());
comando.setString(2, c.getCpf());
comando.setString(3, c.getEndereco());
comando.setString(4, c.getTelefone());
ResultSet resultado = comando.executeQuery();
while (resultado.next()) {
 Cliente item = new Cliente();
 item.setCodigoCliente(resultado.getLong("codico"));
 item.setNome(resultado.getString("nome"));
 item.setCpf(resultado.getString("cpf"));
 item.setEndereco(resultado.getString("endereco"));
 item.setTelefone(resultado.getString("telefone"));
 lista.add(item);
}
return lista;
}
}
