Re:Não consigo fazer insert no BD [RESOLVIDO]

Olá pessoal do GUJ…estou enfrentando um pequeno problema (creio eu). Estou tentando inserir um registro no BD (Postgresql) e, aparentemente, não há nada de errado com o meu código, pelo menos eu não estou detectando isso via eclipse. Criei uma rotina de login e funcionou perfeitamente. Esse módulo não me traz nenhuma mensagem de erro, porém, quando eu mando executar não acontece a inserção e no console do eclipse surge a seguinte mensagem:

org.postgresql.util.PSQLException: ERRO: character with byte sequence 0xc2 0x93 in encoding “UTF8” has no equivalent in encoding “WIN1252”
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2101)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:1834)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:255)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:510)
at org.postgresql.jdbc2.AbstractJdbc2Statement.executeWithFlags(AbstractJdbc2Statement.java:386)
at org.postgresql.jdbc2.AbstractJdbc2Statement.execute(AbstractJdbc2Statement.java:379)
at br.com.DAO.JDBCResenhaDAO.inserir(JDBCResenhaDAO.java:41)
at br.com.control.ActionCadResenha.doPost(ActionCadResenha.java:66)

Eis as minhas classes:

package br.com.control;

import br.com.model.Resenha;
import br.com.DAO.*;

import java.io.IOException;
import java.sql.Connection;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;




/**
 * Servlet implementation class ActionCadResenha
 */
public class ActionCadResenha extends HttpServlet {
	private static final long serialVersionUID = 1L;
       
   
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		
		
		String autor = request.getParameter("autor");
		String titulo = request.getParameter("titulo");
		String materia = request.getParameter("materia");
		String fonte = request.getParameter("fonte");
		String publicacao = request.getParameter("publicacao");
		String lancamento = request.getParameter("lancamento");
		
		Date dateP=null;
		Date dateL=null;
		
        try {
            dateP = new SimpleDateFormat("dd/MM/yyyy").parse(publicacao);
            
        } catch (ParseException ex) {
            ex.printStackTrace();
        }
        
        try {
        	dateL = new SimpleDateFormat("dd/MM/yyyy").parse(lancamento);
		} catch (Exception e) {
			System.out.println("Atenção, ocorreu um erro; " + e.getMessage());
		}
		
		
		Resenha cadResenha =  new Resenha();
		cadResenha.setAutor(autor);
		cadResenha.setTitulo(titulo);
		cadResenha.setMateria(materia);
		cadResenha.setFonte(fonte);
		cadResenha.setData_publicacao(dateP);
		cadResenha.setData_lancamento(dateL);
		
		FabricaConexao fabrica = new FabricaConexao();
        Connection conexao = fabrica.fazConexao();
        
        JDBCResenhaDAO dao = new JDBCResenhaDAO(conexao);
        dao.inserir(cadResenha);
        
        if(cadResenha!=null){
            //System.out.println("<a href='home.jsp'>Retornar</a>");
        	System.out.println("Registro inserido com sucesso!!!");
        }
        
        fabrica.fecharConexao();
		
	}

} 

/*****************/

package br.com.DAO;

import br.com.model.Resenha;

import java.sql.PreparedStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;




public class JDBCResenhaDAO implements ResenhaDAO {
	
	 Connection conexao;
	    
	    public JDBCResenhaDAO(Connection conexao){
	        this.conexao = conexao;
	        
	    }
	    
	    public void inserir(Resenha resenha) {
	       
	        String comando = "INSERT INTO tb_resenha(autor, titulo, materia, fonte, data_publicacao, data_lancamento) VALUES (?,?,?,?,?,?)";
	        
	        PreparedStatement p;
	        
	        try {
	            p = this.conexao.prepareStatement(comando);
	            p.setString(1, resenha.getAutor());
	            p.setString(2, resenha.getTitulo());
	            p.setString(3, resenha.getMateria());
	            p.setString(4, resenha.getFonte());
	            p.setDate(5, new java.sql.Date(resenha.getData_publicacao().getTime()));
	            p.setDate(6, new java.sql.Date(resenha.getData_lancamento().getTime()));
	            
	            
	            p.execute();
	            
	        } catch (SQLException e) {
	            e.printStackTrace();
	        }
	        
	        
	        
	    }

	    public List<Resenha> listarTodos() {
	        
	        List<Resenha> resenhas = new ArrayList<Resenha>();
	        
	        String comando = "SELECT * FROM tb_resenha ORDER BY id_resenha desc LIMIT 2;";
	        
	        try {
	            java.sql.Statement stmt = conexao.createStatement();
	            ResultSet rs = stmt.executeQuery(comando);
	            
	            while(rs.next()){
	                Resenha resenha = new Resenha();
	                
	                String autor = rs.getString("autor");
	                String titulo = rs.getString("titulo");
	                String materia = rs.getString("materia");
	                String fonte = rs.getString("fonte");
	                Date data_publicacao = rs.getDate("data_publicacao");
	                Date data_lancamento = rs.getDate("data_lancamento");
	                
	                
	                resenha.setAutor(autor);
	                resenha.setTitulo(titulo);
	                resenha.setMateria(materia);
	                resenha.setFonte(fonte);
	                resenha.setData_publicacao(data_publicacao);
	                resenha.setData_lancamento(data_lancamento);
	                
	                
	                
	                resenhas.add(resenha);
	            }
	        } catch (Exception e) {
	            e.printStackTrace();
	        }
	        
	        
	        return resenhas;
	    }

}

/**********************************/

package br.com.model;

import java.util.Date;

public class Resenha {
	
	private String autor;
	private String titulo;
	private String materia;
	private String fonte;
	private Date data_publicacao;
	private Date data_lancamento;
	public String getAutor() {
		return autor;
	}
	public void setAutor(String autor) {
		this.autor = autor;
	}
	public String getTitulo() {
		return titulo;
	}
	public void setTitulo(String titulo) {
		this.titulo = titulo;
	}
	public String getMateria() {
		return materia;
	}
	public void setMateria(String materia) {
		this.materia = materia;
	}
	public String getFonte() {
		return fonte;
	}
	public void setFonte(String fonte) {
		this.fonte = fonte;
	}
	public Date getData_publicacao() {
		return data_publicacao;
	}
	public void setData_publicacao(Date data_publicacao) {
		this.data_publicacao = data_publicacao;
	}
	public Date getData_lancamento() {
		return data_lancamento;
	}
	public void setData_lancamento(Date data_lancamento) {
		this.data_lancamento = data_lancamento;
	}
	
	

}

/*************************************************/

package br.com.DAO;

import java.sql.Connection;


public class FabricaConexao {
    private java.sql.Connection conexao;
    
    public Connection fazConexao(){
        
        try {
            Class.forName("org.postgresql.Driver");
            conexao = java.sql.DriverManager.getConnection("jdbc:postgresql://localhost:5432/sisaut","postgres","dba1965test");
        } catch (Exception e) {
            e.printStackTrace();
        }
        
        return conexao;
    }
    
    public void fecharConexao(){
    
        try {
            conexao.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    
    }
}

aiai sem tag code…

Esqueci de mensionar que sou novo no desenvolvimento web e java tb…onde errei?

O erro ocorre quando você tenta autenticar o login?

Desculpe se não fui claro o suficiente…eu usei o módulo de login como exemplo. O meu problema é quando eu tento persistir no BD para cadastro de resenhas (notícias) - outro módulo.

Esse erro acontece quando vc esta tentando inserir dados incopativeis com a configuração do Collection Encoding, vc esta tentando cadastrar dados com o formato UTF8
dentro do WIN1252… não vai dar certo…

De uma olhada na configuração do seu banco de dados…
Cada tabela tem configuração diferente;

Ou no tipo de dados do seu script

Grato pela ajuda…