Erro quando colocado connection.rollback(); não aceita dentro do catch. segue abaixo o codigo da classe.
public class PessoasDaoBd implements PessoaDao{
private int id;
@Override
public int insert(Pessoas pessoas) {
try {
Connection connection = FabricaConexoes.getConexao();
Statement statement = connection.createStatement();
connection.setAutoCommit(false);
statement.executeUpdate(
String.format(
"INSERT INTO pessoas (nome)"
+ "VALUES ('%s')",
pessoas.getNome()));
ResultSet rs;
rs = statement.executeQuery(String.format("SELECT currval('pessoas_id_pessoa_seq'::regclass) as id;"));
while(rs.next()){
id = rs.getInt("id");
}
statement.executeUpdate(
String.format(
"INSERT INTO enderecos (id_pessoa, endereco)"
+ "VALUES ("+id+", '%s')",
pessoas.getEndereco()));
connection.commit();
return 0;
} catch (SQLException sqle) {
connection.rollback();
System.err.println("Erro");
} finally {
}
return -1;
}
}