Percorrer array/list com jstl (forEach)

1 resposta
J

Pessoal,

Não estou entendo o que está acontecendo, sempre usei a tag forEach para percorrer a minha lista, porém agora está dando erro. Até agora toda lista que percorria era gerada pelo metodo list() da API Criteria, porém ao criar um SQLQuery, ao inves de Criteria e dar um list() tambem, não consigo percorrer a lista de resultados dessa minha query, muito estranho.

Um exemplo de list() que consigo percorrer normalmente com a tag forEach:
public List<Colaborador> acharColaboradorPeloNome(String nome) {
Criteria c = session.createCriteria(Colaborador.class);
c.add(Restrictions.like("nome", nome, MatchMode.ANYWHERE));

return c.list();
}
Mostro essa lista assim:
<c:forEach var="resultado" items="${resultado}">
  ${resultado.nome}
</c:forEach>
Até aqui tudo bem. Com SQLQuery, que não consigo mostrar:
public List<Colaborador> aniversariantesDoMes(int mes) {
  SQLQuery query = session.createSQLQuery("SELECT * FROM catalogo.colaborador WHERE EXTRACT(MONTH FROM data_nascimento) ="   + mes);
  query.setResultTransformer(Transformers.TO_LIST);

  return query.list();
}
Quando vou mostrar na tela assim:
<c:forEach var="aniversariantes" items="${aniversariantes}">
      <tr>
           <td align="center">
                <c:out value="${aniversariantes.nome}"></c:out><br />
            </td>
       </tr>
</c:forEach>
Da o seguinte erro:
An exception occurred processing JSP page /pesquisas/aniversariantes.jsp at line 38

35:
36:
37:
38:

Se eu não tentar acessar atributo nenhum e deixar só ${anioversariantes}, para de dar erro, mas mostra todos os atributos juntos da minha lista, ficando assim:

[22, jefferson, 1988-05-19, , , null, , , , , , , , 25, ([telefone removido], , , , , , , , null, , , , , null, 1, , null, Ativo, null, 20, null]

E quero listar apenas jefferson.

Desde já agradeço.

1 Resposta

J

Alguem pode me ajudar?

Criado 18 de junho de 2010
Ultima resposta 18 de jun. de 2010
Respostas 1
Participantes 1