Guilherme, que bom que gostou! =D
JackOld, eu ainda assim faria diferente:
Você não precisa de getters e setters para poder fazer a serialização, ela vai ser feita pelo seu atributo.
Eu mudaria o seu wrapper para algo assim:
public class Wrapper {
private List< List<String> > lista;
private int qtdPaginas;
private int paginaAtual;
protected void setQtdPaginas(int qtdPaginas) {
this.qtdPaginas = qtdPaginas;
}
protected void setPaginaAtual(int paginaAtual) {
this.paginaAtual = paginaAtual;
}
protected void setLista(List< List<String> > lista) {
this.lista = lista;
}
}
Daí você extends Wrapper na sua Classe Wrapper. Que nem o exemplo que eu dei sobre a classe PessoaWrapper. O importante é que ela receba uma lista de Pessoa e saiba o que fazer com essa lista.
A classe PessoaWrapper vai converter os atributos que são necessários para uma List< List<String> >, assim, você só está mandando o que é necessário. Seu serializer pode ficar assim:
JackOld
Dezembro 13, 2012, 11:52am
#22
O lance Guerreiro é colocar mais uma camada, mas a idéia faz sentido, quero o mínimo de objetos em memória possível.
Fiz a paginacao com jQuery tranquilim…Não vou usar o DataTable por hora, mas valeu a dica galera.
Galera tem um exemplo da parte server side pra paginação que implementei…
DisplayTagPagingResults.java
import java.util.List;
import java.util.ResourceBundle;
import javax.servlet.http.HttpServletRequest;
import org.displaytag.pagination.PaginatedList;
import org.displaytag.properties.SortOrderEnum;
import br.com.caelum.vraptor.ioc.Component;
import br.com.caelum.vraptor.ioc.RequestScoped;
This file has been truncated. show original
HibernateUtil.java
import java.util.List;
import org.apache.log4j.Logger;
import org.hibernate.Criteria;
import org.hibernate.criterion.Order;
import org.hibernate.criterion.Projections;
import br.com.nk.commons.filter.SortOrderEnum;
import br.com.nk.commons.filter.pagingResults.PagingResults;
This file has been truncated. show original
PagingResults.java
import java.util.List;
import br.com.nk.commons.filter.SortOrderEnum;
/**
* Interface a ser implementada por classes responsáveis pela paginação e
* ordenação.
*
* @author Nykolas Lima
* @since 30/07/2010
This file has been truncated. show original
There are more than three files. show original
Para quem estiver navegando por aqui, fiz um tutorial passo a passo explicando como usar o DataTables e com laboratório pronto no Github:
http://willianantunes.blogspot.com.br/2014/04/datatables-com-vraptor.html
Abraços!