Olá estou com um problema no meu aplicativo java web usando
JSF e primefaces, na classe Fornecedor Bean uso a anotation
@PosConstruct para que a página primefaces já inicie com o
cadastro de fornecedores, mas por algum motivo isso não acontece
nada carrega, abaixo lista de coisas que já tentei,
- instalar mysql jar mais recente
- registrar driver mysql
- limpar projeto
- reconstruir projeto
- reinstalar servidor
mas como os método listar da classes dao estão funcionando
me vêem a cabeça que o problema seja no arquivo xhtml, bem não tenho
certeza. vou postar os códigos das classes se alguém puder
me ajudar sou grato.
Classe fornecedores.xhtml
<?xml version="1.0" encoding="ISO-8859-1" ?><ui:composition xmlns=“http://www.w3.org/1999/xhtml”
xmlns:ui=“http://java.sun.com/jsf/facelets”
xmlns:h=“http://java.sun.com/jsf/html”
xmlns:f=“http://java.sun.com/jsf/core”
xmlns:p=“http://primefaces.org/ui”
template="/templates/modeloSistema.xhtml"
value="#{MBFornecedores.itens}"
var=“item”>
<ui:define name=“menu”>
<ui:include src="/includes/menu.xhtml"/>
</ui:define>
<ui:define name=“conteudo”>
<h:form>
<p:dataTable emptyMessage=“Nenhum registro encontrado!”>
<p:column headerText="Descrição">
<h:outputText value="#{item.descricao}"/>
</p:column>
</p:dataTable>
</h:form>
</ui:define>
</ui:composition>
FornecedorBean
package br.com.farmacia.bean;
import java.sql.SQLException;
import java.util.ArrayList;
import javax.annotation.PostConstruct;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.ViewScoped;
import javax.faces.model.ListDataModel;
import br.com.farmacia.DAO.FornecedoresDAO;
import br.com.farmacia.domain.Fornecedores;
@ManagedBean(name = “MBFornecedores”)
@ViewScoped
public class FornecedoresBean {
private ListDataModel itens;
public ListDataModel getItens() {
return itens;
}
public void setItens(ListDataModel itens) {
this.itens = itens;
}
@PostConstruct
public void prepararPesquisas()
{
System.out.println(“Cheguei aqui.”);
try {
FornecedoresDAO fdao = new FornecedoresDAO();
ArrayList lista = fdao.listar();
itens = new ListDataModel<Fornecedores>(lista);
} catch(SQLException e) {
e.printStackTrace();
}
}
}