Caros colegas,
Por favor me ajude. Eu já li diversos tutorias e não consigo resolver meu problema. Preciso preencher um simples dataTable com dados oriundos de um BD e não estou conseguindo.
Quando testo via java consigo ler os dados porém via dataTable não. Por peço a colaboração dos colegas para o meu caso. Acho que estou errando coisa “banal” mas já não consigo ver os meus erros.
Bem vou colocar aqui os códigos, mas acho que está no bean visão e o dataTable.
Meu face:
<managed-bean>
<managed-bean-name>order2</managed-bean-name>
<managed-bean-class>financeiro.Visao.Visao</managed-bean-class>
<managed-bean-scope>request</managed-bean-scope>
</managed-bean>
Meu bean visao.java
package financeiro.Visao;
import java.sql.SQLException;
import java.util.ArrayList;
import financeiro.DAO.OperacaoCRUD;
import financeiro.Model.Pessoa;
public class Visao {
private ArrayList<Pessoa> listaPessoa;
public ArrayList<Pessoa> getListaPessoa() {
return listaPessoa;
}
public ArrayList<Pessoa> getLista() throws ClassNotFoundException, SQLException{
OperacaoCRUD op = new OperacaoCRUD();
return listaPessoa = op.listar();
}}
Meu arquivo xhtml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
>
<h:head>
<h:outputStylesheet library="css" name="table-style.css" />
</h:head>
<h:body>
<h1>JSF 2 dataTable example</h1>
<h:dataTable value="#{order2.listaPessoa}" var="o" styleClass="order-table" headerClass="order-table-header" rowClasses="order-table-odd-row,order-table-even-row">
<h:column>
<!-- column header -->
<f:facet name="header">Nome</f:facet>
<!-- row record -->
#{o.nome}
</h:column>
<h:column>
<f:facet name="header">Senha</f:facet>
#{o.senha}
</h:column>
<h:column>
<f:facet name="header">Cargo </f:facet>
#{o.cargo}
</h:column>
<h:column>
<f:facet name="header">Email</f:facet>
#{o.email}
</h:column>
</h:dataTable>
</h:body>
</html>
Já coloquei a pergunta num outro forum parecido com esse e não obtive resposta de resolução. Consigo fazer todo o resto do CRUD alterar, inserir, cadastrar porém a consulta impaca.
Se eu inserir essa linha no código na classe visão só para testa consigo ler um registro,
System.out.println(listaPessoa.iterator().next().getNome());
mas não consigo levar para o view. Aparece a tabela vazia somente com o cabeçalhos de coluna. Por favor me oriente no meu erro, seu que está no retorno da lista para o xhtml, mas como faço isso?
Grato a todos,