RESOLVIDO: JavaFX Preencher campos ao clicar na linha de uma Jtable

Bom dia,
Pessoal, não estou conseguindo preencher os campos de um formulário fxml com base no id do registro (linha) clicada em um Jtable de outro fxml, abaixo a estrutura do meu código, por favor me judem.

Classe BEAN (Onde tenho os GET e SET)

package br.com.pcp.bean;

/**
 *
 * @author Fabio Argenton
 */
public class recebimentoDivergencia {

    int cod;
    String dataRecebimento;
    String nf;
    String fornecedor;
    String transportadora;
    String placa;
    String material;
    String descricao;
    int qtdeNF;
    int qtdeFisica;
    int diferenca;
    String tipo;
    String Foto1;
    String Foto2;
    String conferente;
    String obsOperacao;
    String lote;
    String statusOperacao;
    Double custoUnitario;
    Double custoTotal;
    String statusMWM;
    String obsMWM;
    String followup;
    String dataSolucao;
    int notaDebito;
    String bloqueioSAP;

    @Override
    public String toString() {
        return "RecebDivergencia{" + "cod=" + cod + ", dataRecebimento=" + dataRecebimento + ", nf=" + nf + ", fornecedor=" + fornecedor + ", transportadora=" + transportadora + ", placa=" + placa + ", material=" + material + ", descricao=" + descricao + ", qtdeNF=" + qtdeNF + ", qtdeFisica=" + qtdeFisica + ", diferenca=" + diferenca + ", tipo=" + tipo + ", Foto1=" + Foto1 + ", Foto2=" + Foto2 + ", conferente=" + conferente + ", obsOperacao=" + obsOperacao + ", lote=" + lote + ", statusOperacao=" + statusOperacao + ", custoUnitario=" + custoUnitario + ", custoTotal=" + custoTotal + ", statusMWM=" + statusMWM + ", obsMWM=" + obsMWM + ", followup=" + followup + ", dataSolucao=" + dataSolucao + ", notaDebito=" + notaDebito + ", bloqueioSAP=" + bloqueioSAP + '}';
    }

    public recebimentoDivergencia() {
    }

    public recebimentoDivergencia(int cod, String dataRecebimento, String nf, String fornecedor, String transportadora, String placa, String material, String descricao, int qtdeNF, int qtdeFisica, int diferenca, String tipo, String Foto1, String Foto2, String conferente, String obsOperacao, String lote, String statusOperacao, Double custoUnitario, Double custoTotal, String statusMWM, String obsMWM, String followup, String dataSolucao, int notaDebito, String bloqueioSAP) {
        this.cod = cod;
        this.dataRecebimento = dataRecebimento;
        this.nf = nf;
        this.fornecedor = fornecedor;
        this.transportadora = transportadora;
        this.placa = placa;
        this.material = material;
        this.descricao = descricao;
        this.qtdeNF = qtdeNF;
        this.qtdeFisica = qtdeFisica;
        this.diferenca = diferenca;
        this.tipo = tipo;
        this.Foto1 = Foto1;
        this.Foto2 = Foto2;
        this.conferente = conferente;
        this.obsOperacao = obsOperacao;
        this.lote = lote;
        this.statusOperacao = statusOperacao;
        this.custoUnitario = custoUnitario;
        this.custoTotal = custoTotal;
        this.statusMWM = statusMWM;
        this.obsMWM = obsMWM;
        this.followup = followup;
        this.dataSolucao = dataSolucao;
        this.notaDebito = notaDebito;
        this.bloqueioSAP = bloqueioSAP;
    }

    public int getCod() {
        return cod;
    }

    public void setCod(int cod) {
        this.cod = cod;
    }

    public String getDataRecebimento() {
        return dataRecebimento;
    }

    public void setDataRecebimento(String dataRecebimento) {
        this.dataRecebimento = dataRecebimento;
    }

    public String getNf() {
        return nf;
    }

    public void setNf(String nf) {
        this.nf = nf;
    }

    public String getFornecedor() {
        return fornecedor;
    }

    public void setFornecedor(String fornecedor) {
        this.fornecedor = fornecedor;
    }

    public String getTransportadora() {
        return transportadora;
    }

    public void setTransportadora(String transportadora) {
        this.transportadora = transportadora;
    }

    public String getPlaca() {
        return placa;
    }

    public void setPlaca(String placa) {
        this.placa = placa;
    }

    public String getMaterial() {
        return material;
    }

    public void setMaterial(String material) {
        this.material = material;
    }

    public String getDescricao() {
        return descricao;
    }

    public void setDescricao(String descricao) {
        this.descricao = descricao;
    }

    public int getQtdeNF() {
        return qtdeNF;
    }

    public void setQtdeNF(int qtdeNF) {
        this.qtdeNF = qtdeNF;
    }

    public int getQtdeFisica() {
        return qtdeFisica;
    }

    public void setQtdeFisica(int qtdeFisica) {
        this.qtdeFisica = qtdeFisica;
    }

    public int getDiferenca() {
        return diferenca;
    }

    public void setDiferenca(int diferenca) {
        this.diferenca = diferenca;
    }

    public String getTipo() {
        return tipo;
    }

    public void setTipo(String tipo) {
        this.tipo = tipo;
    }

    public String getFoto1() {
        return Foto1;
    }

    public void setFoto1(String Foto1) {
        this.Foto1 = Foto1;
    }

    public String getFoto2() {
        return Foto2;
    }

    public void setFoto2(String Foto2) {
        this.Foto2 = Foto2;
    }

    public String getConferente() {
        return conferente;
    }

    public void setConferente(String conferente) {
        this.conferente = conferente;
    }

    public String getObsOperacao() {
        return obsOperacao;
    }

    public void setObsOperacao(String obsOperacao) {
        this.obsOperacao = obsOperacao;
    }

    public String getLote() {
        return lote;
    }

    public void setLote(String lote) {
        this.lote = lote;
    }

    public String getStatusOperacao() {
        return statusOperacao;
    }

    public void setStatusOperacao(String statusOperacao) {
        this.statusOperacao = statusOperacao;
    }

    public Double getCustoUnitario() {
        return custoUnitario;
    }

    public void setCustoUnitario(Double custoUnitario) {
        this.custoUnitario = custoUnitario;
    }

    public Double getCustoTotal() {
        return custoTotal;
    }

    public void setCustoTotal(Double custoTotal) {
        this.custoTotal = custoTotal;
    }

    public String getStatusMWM() {
        return statusMWM;
    }

    public void setStatusMWM(String statusMWM) {
        this.statusMWM = statusMWM;
    }

    public String getObsMWM() {
        return obsMWM;
    }

    public void setObsMWM(String obsMWM) {
        this.obsMWM = obsMWM;
    }

    public String getFollowup() {
        return followup;
    }

    public void setFollowup(String followup) {
        this.followup = followup;
    }

    public String getDataSolucao() {
        return dataSolucao;
    }

    public void setDataSolucao(String dataSolucao) {
        this.dataSolucao = dataSolucao;
    }

    public int getNotaDebito() {
        return notaDebito;
    }

    public void setNotaDebito(int notaDebito) {
        this.notaDebito = notaDebito;
    }

    public String getBloqueioSAP() {
        return bloqueioSAP;
    }

    public void setBloqueioSAP(String bloqueioSAP) {
        this.bloqueioSAP = bloqueioSAP;
    }
}

Classe DAO (CRUD - Onde tem o método que faz a consulta e (ArrayList)):

package br.com.pcp.dao;

import br.com.pcp.bean.recebimentoDivergencia;
import br.com.pcp.db.Conexao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import javax.swing.JOptionPane;

/**
 *
 * @author Fabio Argenton
 */
public class recebimentoDivergenciaDAO {
    
    //AQUI... é esse método que estou usando
    //Metodo para retornar todos os registros da tabela (Read - C"R"UD) //recebendo como parâmetro o id
    public List<recebimentoDivergencia> obterTabelaPorCod(int id) {
        List<recebimentoDivergencia> lista = new ArrayList<>();
        Connection conn = Conexao.getConnection();
        Statement stmt = null;
        ResultSet rs = null;
        String sql = "SELECT * FROM recebdivergencia "
                + " WHERE cod = " + id + " ORDER BY cod DESC LIMIT 5000";
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            while (rs.next()) {
                recebimentoDivergencia bean = new recebimentoDivergencia();

                bean.setCod(rs.getInt("cod"));
                bean.setDataRecebimento(rs.getString("dataRecebimento"));
                bean.setNf(rs.getString("nf"));
                bean.setFornecedor(rs.getString("fornecedor"));
                bean.setTransportadora(rs.getString("transportadora"));
                bean.setPlaca(rs.getString("placa"));
                bean.setMaterial(rs.getString("material"));
                bean.setDescricao(rs.getString("descricao"));
                bean.setQtdeNF(rs.getInt("qtdeNF"));
                bean.setQtdeFisica(rs.getInt("qtdeFisica"));
                bean.setDiferenca(rs.getInt("diferenca"));
                bean.setTipo(rs.getString("tipo"));
                bean.setFoto1(rs.getString("Foto1"));
                bean.setFoto2(rs.getString("Foto2"));
                bean.setConferente(rs.getString("conferente"));
                bean.setObsOperacao(rs.getString("obsOperacao"));
                bean.setLote(rs.getString("lote"));
                bean.setStatusOperacao(rs.getString("statusOperacao"));
                bean.setCustoUnitario(rs.getDouble("custoUnitario"));
                bean.setCustoTotal(rs.getDouble("custoTotal"));
                bean.setStatusMWM(rs.getString("statusMWM"));
                bean.setObsMWM(rs.getString("obsMWM"));
                bean.setFollowup(rs.getString("followup"));
                bean.setDataSolucao(rs.getString("dataSolucao"));
                bean.setNotaDebito(rs.getInt("notaDebito"));
                bean.setBloqueioSAP(rs.getString("bloqueioSAP"));

                lista.add(bean);
            }
        } catch (Exception e) {
            e.printStackTrace();
            Conexao.close((com.mysql.jdbc.Connection) conn, stmt, rs);
        } finally {
            Conexao.close((com.mysql.jdbc.Connection) conn, stmt, rs);
        }
        return lista;
    }

    //Método Inserir um registro na tabela (Insert - "C"RUD)
    public void inserir(recebimentoDivergencia bean) throws SQLException {
        String sql = "INSERT INTO recebdivergencia "
                + "(dataRecebimento,nf,fornecedor,transportadora,placa,material,descricao,qtdeNF,qtdeFisica,"
                + " diferenca,tipo,Foto1,Foto2,conferente,obsOperacao,lote,statusOperacao,custoUnitario,"
                + " custoTotal,statusMWM,obsMWM,followup,dataSolucao,notaDebito,bloqueioSAP) "
                + "VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
        com.mysql.jdbc.Connection conn = Conexao.getConnection();
        try {
            PreparedStatement pstm = conn.prepareStatement(sql);

            pstm.setString(1, bean.getDataRecebimento());
            pstm.setString(2, bean.getNf());
            pstm.setString(3, bean.getFornecedor());
            pstm.setString(4, bean.getTransportadora());
            pstm.setString(5, bean.getPlaca());
            pstm.setString(6, bean.getMaterial());
            pstm.setString(7, bean.getDescricao());
            pstm.setInt(8, bean.getQtdeNF());
            pstm.setInt(9, bean.getQtdeFisica());
            pstm.setInt(10, bean.getDiferenca());
            pstm.setString(11, bean.getTipo());
            pstm.setString(12, bean.getFoto1());
            pstm.setString(13, bean.getFoto2());
            pstm.setString(14, bean.getConferente());
            pstm.setString(15, bean.getObsOperacao());
            pstm.setString(16, bean.getLote());
            pstm.setString(17, bean.getStatusOperacao());
            pstm.setDouble(18, bean.getCustoUnitario());
            pstm.setDouble(19, bean.getCustoTotal());
            pstm.setString(20, bean.getStatusMWM());
            pstm.setString(21, bean.getObsMWM());
            pstm.setString(22, bean.getFollowup());
            pstm.setString(23, bean.getDataSolucao());
            pstm.setInt(24, bean.getNotaDebito());
            pstm.setString(25, bean.getBloqueioSAP());

            pstm.execute();
            Conexao.close((com.mysql.jdbc.Connection) conn, pstm);
            JOptionPane.showMessageDialog(null, "Registro salvo com sucesso!");
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, ex);
            Conexao.close((com.mysql.jdbc.Connection) conn);
        }
    }

    //Metodo para Alterar dados de um registro da tabela (Update - CR"U"D)
    public void alterar(recebimentoDivergencia bean) throws SQLException {
        String sql = "UPDATE recebdivergencia SET "
                + "dataRecebimento=?,"
                + "nf=?,"
                + "fornecedor=?,"
                + "transportadora=?,"
                + "placa=?,"
                + "material=?,"
                + "descricao=?,"
                + "qtdeNF=?,"
                + "qtdeFisica=?,"
                + "diferenca=?,"
                + "tipo=?,"
                + "Foto1=?,"
                + "Foto2=?,"
                + "conferente=?,"
                + "obsOperacao=?,"
                + "lote=?,"
                + "statusOperacao=?,"
                + "custoUnitario=?,"
                + "custoTotal=?,"
                + "statusMWM=?,"
                + "obsMWM=?,"
                + "followup=?,"
                + "dataSolucao=?,"
                + "notaDebito=?, "
                + "bloqueioSAP=? "
                + "WHERE cod=?";
        com.mysql.jdbc.Connection conn = Conexao.getConnection();
        try {
            PreparedStatement pstm = conn.prepareStatement(sql);

            pstm.setString(1, bean.getDataRecebimento());
            pstm.setString(2, bean.getNf());
            pstm.setString(3, bean.getFornecedor());
            pstm.setString(4, bean.getTransportadora());
            pstm.setString(5, bean.getPlaca());
            pstm.setString(6, bean.getMaterial());
            pstm.setString(7, bean.getDescricao());
            pstm.setInt(8, bean.getQtdeNF());
            pstm.setInt(9, bean.getQtdeFisica());
            pstm.setInt(10, bean.getDiferenca());
            pstm.setString(11, bean.getTipo());
            pstm.setString(12, bean.getFoto1());
            pstm.setString(13, bean.getFoto2());
            pstm.setString(14, bean.getConferente());
            pstm.setString(15, bean.getObsOperacao());
            pstm.setString(16, bean.getLote());
            pstm.setString(17, bean.getStatusOperacao());
            pstm.setDouble(18, bean.getCustoUnitario());
            pstm.setDouble(19, bean.getCustoTotal());
            pstm.setString(20, bean.getStatusMWM());
            pstm.setString(21, bean.getObsMWM());
            pstm.setString(22, bean.getFollowup());
            pstm.setString(23, bean.getDataSolucao());
            pstm.setInt(24, bean.getNotaDebito());
            pstm.setString(25, bean.getBloqueioSAP());
            pstm.setInt(26, bean.getCod());

            pstm.executeUpdate();
            Conexao.close((com.mysql.jdbc.Connection) conn, pstm);
            JOptionPane.showMessageDialog(null, "Registro alterado com sucesso!");
        } catch (SQLException ex) {
            JOptionPane.showMessageDialog(null, ex);
            Conexao.close((com.mysql.jdbc.Connection) conn);
        }
    }

    //Metodo para retornar todos os registros da tabela (Read - C"R"UD)
    public List<recebimentoDivergencia> obterTabela() {
        List<recebimentoDivergencia> lista = new ArrayList<>();
        Connection conn = Conexao.getConnection();
        Statement stmt = null;
        ResultSet rs = null;
        String sql = "SELECT * FROM recebdivergencia "
                + " ORDER BY cod DESC LIMIT 5000";
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            while (rs.next()) {
                recebimentoDivergencia bean = new recebimentoDivergencia();

                bean.setCod(rs.getInt("cod"));
                bean.setDataRecebimento(rs.getString("dataRecebimento"));
                bean.setNf(rs.getString("nf"));
                bean.setFornecedor(rs.getString("fornecedor"));
                bean.setTransportadora(rs.getString("transportadora"));
                bean.setPlaca(rs.getString("placa"));
                bean.setMaterial(rs.getString("material"));
                bean.setDescricao(rs.getString("descricao"));
                bean.setQtdeNF(rs.getInt("qtdeNF"));
                bean.setQtdeFisica(rs.getInt("qtdeFisica"));
                bean.setDiferenca(rs.getInt("diferenca"));
                bean.setTipo(rs.getString("tipo"));
                bean.setFoto1(rs.getString("Foto1"));
                bean.setFoto2(rs.getString("Foto2"));
                bean.setConferente(rs.getString("conferente"));
                bean.setObsOperacao(rs.getString("obsOperacao"));
                bean.setLote(rs.getString("lote"));
                bean.setStatusOperacao(rs.getString("statusOperacao"));
                bean.setCustoUnitario(rs.getDouble("custoUnitario"));
                bean.setCustoTotal(rs.getDouble("custoTotal"));
                bean.setStatusMWM(rs.getString("statusMWM"));
                bean.setObsMWM(rs.getString("obsMWM"));
                bean.setFollowup(rs.getString("followup"));
                bean.setDataSolucao(rs.getString("dataSolucao"));
                bean.setNotaDebito(rs.getInt("notaDebito"));
                bean.setBloqueioSAP(rs.getString("bloqueioSAP"));

                lista.add(bean);
            }
        } catch (Exception e) {
            e.printStackTrace();
            Conexao.close((com.mysql.jdbc.Connection) conn, stmt, rs);
        } finally {
            Conexao.close((com.mysql.jdbc.Connection) conn, stmt, rs);
        }
        return lista;
    }

    //Metodo para retornar todos os registros da tabela a partir de um critério (Read - C"R"UD)
    public List<recebimentoDivergencia> obterTabelaCriterio(String Filtro1, String criterio1, String Filtro2, String criterio2) {
        List<recebimentoDivergencia> lista = new ArrayList<>();
        Connection conn = Conexao.getConnection();
        Statement stmt = null;
        ResultSet rs = null;
        String sql = "SELECT * FROM recebdivergencia "
                + " WHERE " + Filtro1 + " LIKE '%" + criterio1 + "%' "
                + " AND " + Filtro2 + " LIKE '%" + criterio2 + "%' "
                + " ORDER BY cod DESC LIMIT 5000";
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            while (rs.next()) {
                recebimentoDivergencia bean = new recebimentoDivergencia();

                bean.setCod(rs.getInt("cod"));
                bean.setDataRecebimento(rs.getString("dataRecebimento"));
                bean.setNf(rs.getString("nf"));
                bean.setFornecedor(rs.getString("fornecedor"));
                bean.setTransportadora(rs.getString("transportadora"));
                bean.setPlaca(rs.getString("placa"));
                bean.setMaterial(rs.getString("material"));
                bean.setDescricao(rs.getString("descricao"));
                bean.setQtdeNF(rs.getInt("qtdeNF"));
                bean.setQtdeFisica(rs.getInt("qtdeFisica"));
                bean.setDiferenca(rs.getInt("diferenca"));
                bean.setTipo(rs.getString("tipo"));
                bean.setFoto1(rs.getString("Foto1"));
                bean.setFoto2(rs.getString("Foto2"));
                bean.setConferente(rs.getString("conferente"));
                bean.setObsOperacao(rs.getString("obsOperacao"));
                bean.setLote(rs.getString("lote"));
                bean.setStatusOperacao(rs.getString("statusOperacao"));
                bean.setCustoUnitario(rs.getDouble("custoUnitario"));
                bean.setCustoTotal(rs.getDouble("custoTotal"));
                bean.setStatusMWM(rs.getString("statusMWM"));
                bean.setObsMWM(rs.getString("obsMWM"));
                bean.setFollowup(rs.getString("followup"));
                bean.setDataSolucao(rs.getString("dataSolucao"));
                bean.setNotaDebito(rs.getInt("notaDebito"));
                bean.setBloqueioSAP(rs.getString("bloqueioSAP"));

                lista.add(bean);
            }
        } catch (Exception e) {
            e.printStackTrace();
            Conexao.close((com.mysql.jdbc.Connection) conn, stmt, rs);
        } finally {
            Conexao.close((com.mysql.jdbc.Connection) conn, stmt, rs);
        }
        return lista;
    }

    //Metodo para retornar apenas um registro da tabela (Read - C"R"UD)
    @SuppressWarnings("CallToThreadDumpStack")
    public static recebimentoDivergencia obterCod(int id) {
        recebimentoDivergencia bean = new recebimentoDivergencia();
        Connection conn = Conexao.getConnection();
        Statement stmt = null;
        ResultSet rs = null;
        String sql = "SELECT * FROM recebdivergencia WHERE cod = " + id;
        try {
            stmt = conn.createStatement();
            rs = stmt.executeQuery(sql);
            if (rs.next()) {
                bean.setCod(rs.getInt("cod"));
                bean.setDataRecebimento(rs.getString("dataRecebimento"));
                bean.setNf(rs.getString("nf"));
                bean.setFornecedor(rs.getString("fornecedor"));
                bean.setTransportadora(rs.getString("transportadora"));
                bean.setPlaca(rs.getString("placa"));
                bean.setMaterial(rs.getString("material"));
                bean.setDescricao(rs.getString("descricao"));
                bean.setQtdeNF(rs.getInt("qtdeNF"));
                bean.setQtdeFisica(rs.getInt("qtdeFisica"));
                bean.setDiferenca(rs.getInt("diferenca"));
                bean.setTipo(rs.getString("tipo"));
                bean.setFoto1(rs.getString("Foto1"));
                bean.setFoto2(rs.getString("Foto2"));
                bean.setConferente(rs.getString("conferente"));
                bean.setObsOperacao(rs.getString("obsOperacao"));
                bean.setLote(rs.getString("lote"));
                bean.setStatusOperacao(rs.getString("statusOperacao"));
                bean.setCustoUnitario(rs.getDouble("custoUnitario"));
                bean.setCustoTotal(rs.getDouble("custoTotal"));
                bean.setStatusMWM(rs.getString("statusMWM"));
                bean.setObsMWM(rs.getString("obsMWM"));
                bean.setFollowup(rs.getString("followup"));
                bean.setDataSolucao(rs.getString("dataSolucao"));
                bean.setNotaDebito(rs.getInt("notaDebito"));
                bean.setBloqueioSAP(rs.getString("bloqueioSAP"));
            }
        } catch (Exception e) {
            e.printStackTrace();
            Conexao.close((com.mysql.jdbc.Connection) conn, stmt, rs);
        } finally {
            Conexao.close((com.mysql.jdbc.Connection) conn, stmt, rs);
        }
        return bean;
    }

    //Metodo para Deletar um registro da tabela (Delete - CRU"D")
    public boolean deletar(int id) {
        boolean del = false;
        recebimentoDivergencia bean = obterCod(id);
        if (bean.getCod() > 0) {
            Connection conn = Conexao.getConnection();
            Statement stmt = null;
            String sql = "DELETE FROM recebdivergencia WHERE cod = " + id;
            try {
                stmt = conn.createStatement();
                stmt.executeUpdate(sql);
                del = true;
            } catch (Exception e) {
                e.printStackTrace();
                Conexao.close((com.mysql.jdbc.Connection) conn, stmt);
            } finally {
                Conexao.close((com.mysql.jdbc.Connection) conn, stmt);
            }
        }
        return del;
    }
}

Tenho um formulário fxml que tem um Jtable, ao clicar num registro do Jtable faço o processo normal de chamar o fxml que contém os campos e passo como parâmetro o id do registro selecionado, até aqui tudo ok:

viewDivergenciaDetailController viewDivergenciaDetail= fxmlLoader.getController();//Construtor da próxima tela
viewDivergenciaDetail.showDetails(selectedDivergencia.getCod()); //método showDetails(int id) da próxima tela que receberá o id do registro selecionado

Agora na tela que possui os campos tenho um método que recebe o id e passa ele para o método obterTabelaPorCod(int id) da classe DAO, tento passar isso num List e preencher os campos com o get mas não está rolando, como posso fazer isso utilizando essa mesmas classes (Bean e DAO)?

//Metodo que carrega os dados nos campos da tela
        public void showDetails(int id) {
            System.out.println("ID Selecionado: " + id);

            recebimentoDivergenciaDAO rcdDAO = new recebimentoDivergenciaDAO();
            List<recebimentoDivergencia> lista = new ArrayList<>(rcdDAO.obterTabelaPorCod(id));
            
            txtCod.setText(lista.getCod());
            txtDataRecebimento.setText(lista.getCod());
            //continua com os demais campos
        }

Qual o erro que ocorre? pelo que estou vendo a chamada rcdDAO.obterTabelaPorCod(id) retorna uma lista, não um objeto do tipo recebimentoDivergência. Verifique se a lista não está vazia com lista.isEmpty() ou lista.size() > 0 e caso haja objeto na lista pegue o da posição 0. Mas sem o erro fica difícil saber o que está ocorrendo…

@Andrauss
Segue abaixo o método revisado, agora estou conseguindo preencher somente o campo cod, porém os demais campos dá erro, fiz a verificação da List e está ok:

//Metodo que carrega os dados nos campos da tela
    public void showDetails(int id) {
        System.out.println("ID Selecionado: " + id);

        List<recebimentoDivergencia> lista = new ArrayList<>(rcdDAO.obterTabelaPorCod(id));

        if (lista.isEmpty()) {
            System.out.println("Lista vazia");
        } else {
            System.out.println("Lista ok");
            txtCod.setText(String.valueOf(lista.get(0).getCod()));
            txtNF.setText(String.valueOf(lista.get(2).getQtdeNF()));
            //Aqui vai mais porém já deu erro acima
        }
    } 

Acredito que este é o erro: java.lang.IndexOutOfBoundsException: Index: 2, Size: 1
Porém já troquei o lista.get() para lista.get(1), lista.get(2)… mas não estou conseguindo identificar a solução

Aqui o log de saída com o resultado e o erro:

ID Selecionado: 2
Lista ok
Exception in thread "JavaFX Application Thread" java.lang.RuntimeException: java.lang.reflect.InvocationTargetException
	at javafx.fxml.FXMLLoader$MethodHandler.invoke(FXMLLoader.java:1774)
	at javafx.fxml.FXMLLoader$ControllerMethodEventHandler.handle(FXMLLoader.java:1657)
	at com.sun.javafx.event.CompositeEventHandler.dispatchBubblingEvent(CompositeEventHandler.java:86)
	at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:238)
	at com.sun.javafx.event.EventHandlerManager.dispatchBubblingEvent(EventHandlerManager.java:191)
	at com.sun.javafx.event.CompositeEventDispatcher.dispatchBubblingEvent(CompositeEventDispatcher.java:59)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:58)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.BasicEventDispatcher.dispatchEvent(BasicEventDispatcher.java:56)
	at com.sun.javafx.event.EventDispatchChainImpl.dispatchEvent(EventDispatchChainImpl.java:114)
	at com.sun.javafx.event.EventUtil.fireEventImpl(EventUtil.java:74)
	at com.sun.javafx.event.EventUtil.fireEvent(EventUtil.java:54)
	at javafx.event.Event.fireEvent(Event.java:198)
	at javafx.scene.Scene$ClickGenerator.postProcess(Scene.java:3470)
	at javafx.scene.Scene$ClickGenerator.access$8100(Scene.java:3398)
	at javafx.scene.Scene$MouseHandler.process(Scene.java:3766)
	at javafx.scene.Scene$MouseHandler.access$1500(Scene.java:3485)
	at javafx.scene.Scene.impl_processMouseEvent(Scene.java:1762)
	at javafx.scene.Scene$ScenePeerListener.mouseEvent(Scene.java:2494)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:394)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler$MouseEventNotification.run(GlassViewEventHandler.java:295)
	at java.security.AccessController.doPrivileged(Native Method)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler.lambda$handleMouseEvent$353(GlassViewEventHandler.java:432)
	at com.sun.javafx.tk.quantum.QuantumToolkit.runWithoutRenderLock(QuantumToolkit.java:389)
	at com.sun.javafx.tk.quantum.GlassViewEventHandler.handleMouseEvent(GlassViewEventHandler.java:431)
	at com.sun.glass.ui.View.handleMouseEvent(View.java:555)
	at com.sun.glass.ui.View.notifyMouse(View.java:937)
	at com.sun.glass.ui.win.WinApplication._runLoop(Native Method)
	at com.sun.glass.ui.win.WinApplication.lambda$null$147(WinApplication.java:177)
	at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:71)
	at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
	at java.lang.reflect.Method.invoke(Method.java:498)
	at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:275)
	at javafx.fxml.FXMLLoader$MethodHandler.invoke(FXMLLoader.java:1769)
	... 37 more
Caused by: java.lang.IndexOutOfBoundsException: Index: 2, Size: 1
	at java.util.ArrayList.rangeCheck(ArrayList.java:657)
	at java.util.ArrayList.get(ArrayList.java:433)
	at br.com.pcp.controller.telas.recebimento.detail.viewDivergenciaDetailController.showDetails(Unknown Source)
	at br.com.pcp.controller.telas.recebimento.viewDivergenciaController.viewDivergenciaDetail(Unknown Source)
	at br.com.pcp.controller.telas.recebimento.viewDivergenciaController.tblViewDivergenciaDetail(Unknown Source)
	... 47 more

acho que identifiquei, olha só…

Coloquei um for para passar pela lista e me trazer os dados só pra ver:

for (int i = 0; i < lista.size(); i++) {
                System.out.println("GET " + i + ": " + lista.get(i));
            } 

Vi que retornou somente 1 linhas com todas as colunas
GET 0: RecebDivergencia{cod=2, dataRecebimento=24/01/2019, nf=NF123, fornecedor=Fornece, transportadora=tRANSPR,…

Achei que o lista.get() teria que colocar dentro do get ao número da coluna da tabela (index) na verdade não, em todas as colunas uso somente “0”:

txtDataRecebimento.setValue(lista.get(0).getDataRecebimento());
txtNF.setText(String.valueOf(lista.get(0).getNf()));

Ai deu certo, cara obrigado pela ajuda.

Que bom que deu certo, na minha resposta tinha falado pra pegar o índice 0, acho que não se atentou.

Tem razão @Andrauss, show de bola, valeu.