Como implementar o LazyDataModel do PrimeFaces

Java

23/01/2012

Boa tarde,

Como eu faço para implementar o LazyDataModel do primefaces estou usando a versão 3.0
de uma maneira fácil.

Obrigado desde já
Thiago Volpato

Thiago Volpato

Curtidas 0

Melhor post

Dave Fernandes

Dave Fernandes

20/09/2013

veja uma lazy data model genérico e na vida real , creio que seja útil em qualquer app

http://www.asmelhorespraticas.com.br/blog/1/entry-5-exemplo-lazydatamodel-primefaces-na-vida-real/
GOSTEI 1

Mais Respostas

Robson Teixeira

Robson Teixeira

23/01/2012

Da olha olhada no showcase do site do primefaces.
Segue um exemplo que acredito ser o que precisa

http://www.primefaces.org/showcase/ui/datatableLazy.jsf

espero ter ajudado.
robson
GOSTEI 0
Thiago Volpato

Thiago Volpato

23/01/2012

EU já vi,

Só que o exemplo que tem lá ele não faz conexão com o banco.
gostaria de ver um exemplo desse tipo

quem tiver para passa eu agradeço.


GOSTEI 0
Davi Costa

Davi Costa

23/01/2012

Cara é bem simples é só o atributo value da sua tabela vir do banco.
No managedBean. Agora se precisar se conectar com o banco é só avisar, que a comunidade com certeza vai te ajudar.

att Davi
GOSTEI 0
Thiago Volpato

Thiago Volpato

23/01/2012

Boa noite,

Então eu estou trabalhando em cima desse código

private int inicio; 
private int tamanhoPagina; 
private LazyDataModel listar;
private int tamanhoLista = new UsuarioDao().tamanhoLista(); 

public ListaUsuariosController() {
        listar = new LazyDataModel() {

            @Override
            public List load(int i, int i1, String string, boolean bln, Map
map) {
                setInicio(i);
                setTamanhoPagina(i1);
                List<Usuario> lazyUsuario =
usuarioDao.listaTodasEmpresas(getInicio(), getTamanhoPagina());
                return lazyUsuario;
            }
        };
        listaUsuarios.setRowCount(tamanhoLista);
        listaUsuarios.setPageSize(getTamanhoPagina());
    } 

 




Mas tenho duvida nesse trecho do códido
usuarioDao.listaTodasEmpresas(getInicio(), getTamanhoPagina());

que tipo de consulta eu devo fazer

Obrigado desde já
GOSTEI 0
Thiago Volpato

Thiago Volpato

23/01/2012


meu manageBean

private LazyDataModel<Vendedor> lista;

public List<Vendedor> load(int first, int pageSize, String sortField,
					boolean sortOrder, Map<String, String> filters) {
					List<Vendedor> lista = bean.findPageVendedor(first, pageSize);
				return lista;
			};




meu VendedorSessao

public List findPageVendedor(int first,int pageSize){
		try {
		String queryString = select vend from Vendedor;
		return getEm().createQuery(queryString).setFirstResult(first).setMaxResults(pageSize).getResultList();
		 }catch (RuntimeException err){
		  throw err;
		}
		}


meu xhtml
<p:dataTable var=vend value=#{vendedorFace.lista} paginator=true  paginatorTemplate=       
                        rows=10 rowsPerPageTemplate=5,10,15>



Não está mostrando nada!!

Alguém pode me ajuda?

GOSTEI 0
Dyego Carmo

Dyego Carmo

23/01/2012

Voce chegou a verificar a propriedade rendered
GOSTEI 0
Thiago Volpato

Thiago Volpato

23/01/2012

Dyego add a propriedade rendered como true e nada
nao está dando nenhum erro, ele esta me trazendo valor nulo

sabe como eu poderia resolver isso


Valeu desde de já
GOSTEI 0
Dyego Carmo

Dyego Carmo

23/01/2012

Otimo exemplo !
GOSTEI 0
POSTAR