Application - throwing this message - javax.el.PropertyNotWritableException - not writable on type

0

Hello, this is the following, I am not able to delete the selected fields, and my application is playing the message -

javax.el.PropertyNotWritableException: /listarFuncionario.xhtml @ 29,32 selection="# {ControlerBean.FunctionSelected}": Selected 'official' property not writable on type br.com.grande_recife.controller

Follow my bean

@ManagedBean

public class ControlerBean implements Serializable {

private List<Funcionario> funcionarios = this.listarDados();

 Funcionario[]funcionarioSelecionados;    



// private PreparedStatement stmte;

public List<Funcionario> getFuncionarios() {
    return funcionarios;
}

public void setFuncionarios(List<Funcionario> funcionarios) {
    this.funcionarios = funcionarios;
}

public Funcionario[] getFuncionarioSelecionados() {
    return funcionarioSelecionados;
}

public void setFuncionarioSelecionados(Funcionario funcionarioSelecionados) {
    this.funcionarios = (List<Funcionario>) funcionarioSelecionados;
}

public List<Funcionario> listarDados() {

    //gerencia
    String sqq = "select funcionario.cpf , nome, matricula,diretoria,departamento,divisao, cargo "
            + "from funcionario "
            + "left JOIN dadosprofissionais "
            + "ON dadosprofissionais.cpf = funcionario.cpf";

    List<Funcionario> lista = new ArrayList<Funcionario>();

    try {
        Statement tt = Conexao.getConexao().createStatement();
        //PreparedStatement tt = Conexao.getConexao().prepareStatement(sqq);
        //tt.setString(1, sqq);
        ResultSet resul = tt.executeQuery(sqq);

        while (resul.next()) {

            Funcionario funcionario = new Funcionario();
            funcionario.setCpf(resul.getString("cpf"));
            funcionario.setNome(resul.getString("nome"));
            funcionario.setMatricula(resul.getInt("matricula"));
            funcionario.setDiretoria(resul.getString("diretoria"));
            funcionario.setDepartamento(resul.getString("departamento"));
            funcionario.setDivisao(resul.getString("divisao"));
            funcionario.setCargo(resul.getString("cargo"));

            lista.add(funcionario);

        }

    } catch (SQLException ex) {

        Logger.getLogger(ControlerBean.class.getName()).log(Level.SEVERE, null, ex);
        //Logger.getAnonymousLogger(ListarBean.class.getName()).log(Level.SEVERE, null, ex);
    }
    return lista;
}

public void excluir() {



    DeletarCadastro excluir = new DeletarCadastro();
    //excluir.deletarFuncionario();

    for (Funcionario func : funcionarioSelecionados) {       

           excluir.deletarFuncionario(func);


    }



}

}

What can it be ??

    
asked by anonymous 02.08.2016 / 15:49

1 answer

0

I researched this message, and the reason was the set, because this message refers to the type to write and such, and is used through the set.

So what was like this

public void setFuncionarioSelecionados(Funcionario funcionarioSelecionados) {
this.funcionarios = (List<Funcionario>) funcionarioSelecionados;

}

I put it like this .. and in my xhtml I made reference to the delete button using the @ this table.

 public void setFuncionarioSelecionados(Funcionario[] funcionarioSelecionados) {
    this.funcionarioSelecionados = funcionarioSelecionados;
}
    
05.08.2016 / 22:09