Erro com criteria
15/02/2015 05:01
Olá moçada, estou com o seguinte problema, dentro do meu controller criei uma action que retorna uma busca utilizando "findAll", porém não estou conseguindo criar a paginação através dele, pesquisando na internet vi alguns comentários dizendo que não é possível retornar um "contador" para o paginate na view utilizando "findAll" pq ele gera um "arrayList", li uma matéria mt bacana do KICO sobre criterias e depois vi que a paginação através dela é bem mais tranquilo e tentei utilizar, porém ao criar minha criteria conforme código abaixo a variável "testeCriteria" retorna o erro: "Cannot assign 'HibernateCriteriaBuilder' to 'Object'" sendo que eu estou referenciando a classe do meu domínio corretamente:
Class ExemploController{
....demais métodos.....
def buscaExemplo() {
def var1Selecionado = params.tipo_exemplo ?: '1'
def var2Selecionado = params.tipo_esp ?: '71'
if(condição do if){
Aqui ocorre o erro
def testeCriteria = Exemplo.createCriteria()
def query = testeCriteria.list{
....código da criteria....
}
Essa é a consulta com findAll que funciona mas não consegui paginar os resultados
if(condição do if){
def espVar = var2Selecionado.toLong()
def espSel = Esp.findById(espVar)
def query = Exemplo.findAll("from Exemplo as p where p.espM1=? or p.espM2= ?", [espSel,espSel],[max:10,offset:0])
render(view: 'espresultados', model: [exemploInstanceList: query, exemploInstanceCount: query.count])
}else {
def prestVar = var1Selecionado.toLong()
def prestSel = TipoExemplo.findById(prestVar)
def query2 = Exemplo.findAll("from Exemplo as p where p.tipoExemplo=?",[prestSel])
render(view:'espresultados', model: [exemploInstanceList: query2, exemploInstanceCount: query2.count])
}
}
}
Desde já agradeço pela força!
Tags:
paginação, criteria, findall