RESOLVIDO - Erro ExecutaSql na inserção de dados no banco

Estou tentando fazer um insert com o executaSql e esta dando este erro, sou iniciante e não consegui resolver o problema, se alguem poder me dar uma ajudinha eu vou ser muito agradecido.

Exception in thread “AWT-EventQueue-0” java.lang.NullPointerException
at conexoes.Conecta_Banco.executaSql(Conecta_Banco.java:73)
at Autenticacao.ViewiPrincipal.logdeAcesso(ViewiPrincipal.java:879)
at Autenticacao.ViewiPrincipal.(ViewiPrincipal.java:66)
at Autenticacao.ViewLogin.autenticar(ViewLogin.java:210)
at Autenticacao.ViewLogin.bEntrarActionPerformed(ViewLogin.java:195)
at Autenticacao.ViewLogin.access$100(ViewLogin.java:21)

Poste seu código para ajudar a identificar melhor o erro.

Mas pelo o que está retornando o erro.
A sua conexão com o banco de dados está retornando null, provavelmente você não está passando nada para a conexão.

Não esqueça de selecionar o fonte e clicar no botão </> do fórum.

É impossível ler o código da forma que está.

/**
 *
 * @author André Gouveia
 */
public class Conecta_Banco {

    public Statement stmt;
    public ResultSet rs;
    public Statement statement;
    public ResultSet resultSet;
    private String driver = "org.postgresql.Driver";
    private String caminho = "jdbc:postgresql://localhost:5432/ibscDB"; //"jdbc:postgresql://10.0.0.120:5432/escola"
    private String usuario = "postgres";
    private String senha = "17072010";
    public Connection conn;

    //iniciando os objetos
    public Conecta_Banco() {
        this.rs = rs;
        this.stmt = stmt;
        this.conn = conn;
    }

    //abre conexão com o banco
    public void abreConexao() {
        try {
            System.setProperty("jdbc.Drivers", driver);
            setConn(DriverManager.getConnection(caminho, usuario, senha));
            //JOptionPane.showMessageDialog(null, "Conectado com sucesso!");
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "Erro ao conectar!" + ex.getMessage());
            //Logger.getLogger(ConexaoSCI.class.getName()).log(Level.SEVERE, null, ex);
        }
    }

    //fecha conexão com o banco
    public void fechaConexao() {
        try {
            getConn().close();
            //JOptionPane.showMessageDialog(null,"banco fechado");
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, "Não foi possivel " + "fechar o banco de dados: " + ex.getMessage());
        }
    }

    public boolean executarSQL(String pSQL) {
        try {
            //createStatement de con para criar o Statement
            this.setStatement(getConn().createStatement());

            // Definido o Statement, executamos a query no banco de dados
            this.setResultSet(getStatement().executeQuery(pSQL));

        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, ex.getMessage());
            //ex.printStackTrace();
            return false;
        }
        return true;
    }

    public  void executaSql(String sql) {
        try {
            stmt = conn.createStatement(rs.TYPE_SCROLL_SENSITIVE, rs.CONCUR_READ_ONLY);
            rs = stmt.executeQuery(sql);
        } catch (SQLException ex) {
            //JOptionPane.showMessageDialog(null,"Não foi possível "+ "executar o comando sql,"+ex+", o sql passado foi "+sql);
        }
    }

    public int insertSQL(String pSQL) {
        int status = 0;
        try {
            //createStatement de con para criar o Statement
            this.setStatement(conn.createStatement());

            // Definido o Statement, executamos a query no banco de dados
            this.statement.executeUpdate(pSQL);

            //consulta o ultimo id inserido
            this.setResultSet(this.getStatement().executeQuery("SELECT MAX(id_disciplina) FROM tb_disciplina"));

            //recupera o ultimo id inserido
            while (this.resultSet.next()) {
                status = this.resultSet.getInt(1);
            }

            //retorna o ultimo id inserido
            return status;
        } catch (SQLException ex) {
            ex.printStackTrace();
            return status;
        }
    }

    /**
     * @return the stmt
     */
    public Statement getStmt() {
        return stmt;
    }

    /**
     * @param stmt the stmt to set
     */
    public void setStmt(Statement stmt) {
        this.stmt = stmt;
    }

    /**
     * @return the rs
     */
    public ResultSet getRs() {
        return rs;
    }

    /**
     * @param rs the rs to set
     */
    public void setRs(ResultSet rs) {
        this.rs = rs;
    }

    /**
     * @return the conn
     */
    public Connection getConn() {
        return conn;
    }

    /**
     * @param conn the conn to set
     */
    public void setConn(Connection conn) {
        this.conn = conn;
    }

    /**
     * @return the statement
     */
    public Statement getStatement() {
        return statement;
    }

    /**
     * @param statement the statement to set
     */
    public void setStatement(Statement statement) {
        this.statement = statement;
    }

    /**
     * @return the resultSet
     */
    public ResultSet getResultSet() {
        return resultSet;
    }

    /**
     * @param resultSet the resultSet to set
     */
    public void setResultSet(ResultSet resultSet) {
        this.resultSet = resultSet;
    }

}