Erro Vraptor 3 e JQGrid

Pessoas Bom dia estou com seguinte erro no uso do vraptor com JQGrid, as linhas e afins da tabela aparacem porem nao aparece os dados segue codigos!

Controller

	@Public
	@Get @Path("/usuarios/usuario.json")
	 public void loadGrid(Integer page,Integer rows, String sidx, String sord){
		    @SuppressWarnings("unchecked")
			Collection<Usuario> users = dao.fetchGrid(sidx, sord);
	        JQgrid<Usuario> JQgrid = new JQgrid<Usuario>();
	        JQgrid.setPage(page);
	        JQgrid.setRecords(users.size());
	        JQgrid.setTotal((int)Math.ceil((double)users.size() / (double)rows));
	        JQgrid.setRows(users);
	        result.use(Results.json()).withoutRoot().from(JQgrid).include("rows").serialize();
    }

Classe JQGrid


public class JQgrid<T> {

    private int page;
    
    private int total;
    
    private int records;
    
    private Collection<T> rows;

    public int getPage() {
        return page;
    }

    public void setPage(int page) {
        this.page = page;
    }

    public int getTotal() {
        return total;
    }

    public void setTotal(int total) {
        this.total = total;
    }

    public int getRecords() {
        return records;
    }

    public void setRecords(int records) {
        this.records = records;
    }

    public Collection<T> getRows() {
        return rows;
    }

    public void setRows(Collection<T> rows) {
        this.rows = rows;
    }
}

DAO

public Collection fetchGrid(String sidx, String sord){
		//set order
		Order order;
		if(sord.equals("asc")){
			 order = Order.asc(sidx);
		}else{
			 order = Order.desc(sidx);
		}
		return session.createCriteria(Usuario.class).addOrder(order).list();
	}

View

<div id="conteudo">
	<table id="tbl-usuario"></table>
	<div id="pg-usuario"></div>
</div>

<script type="text/javascript">
/** <c:url value="/usuarios/usuario.json"/> */
$(function(){
    $("#tbl-usuario").jqGrid({
        url : '<c:url value="/usuarios/usuario.json"/>',
        editurl:'<c:url value="/usuarios/update"/>',
        datatype : "json", 
        autowidth: false,
        colNames : [ 'Código', 'Nome', 'E-mail', 'Usuario', 'Password' ],
        colModel : [ 
        	{name:'id',index:'id', width:55, sorttype:"int", align:"center"},
            {name:'usuario.nome',index:'usuario.nome', width: 200, editable: true},
            {name:'usuario.email',index:'usuario.email', width: 200, align:"center", editable: true},
            {name:'usuario.usuario',index:'usuario.usuario', width: 300, editable: true},
            {name:'usuario.password',index:'usuario.password', width: 300, editable: true}
        ],
        rowNum : 10,
        pager : '#pg-usuario',
        height : 220,
        viewrecords : true,
        sortname: 'nome',
        sortorder : "desc",
        caption : "Lista de Usuários",
        jsonReader : {
            root: "rows",
            page: "page",
            total: "total",
            records: "records",
            cell: "",
            id: "0"
        }
    });
     
    $("#tbl-usuario").jqGrid('navGrid','#pg-usuario',{edit:true,add:true,del:true,search:true});
});
</script>

Retorno JSON

{"page": 1,"total": 1,"records": 2,"rows": [{"id": 2,"nome": "Teste","email": "teste@teste.com.br","usuario": "teste","password": "ba0663cea63e467e74a0bb8947c3feef"},{"id": 1,"nome": "Fabio Pratta","email": "meumeail@mail.com.br","usuario": "meusuario","password": "meupassword"}]}

Pode colocar como resolvido obrigado!