A princípio pareceu algo tão simples apenas obter um inteiro quando na realidade esta bendição parecia apenas retornar um bendito LONG…
a dúvida é essa, abaixo o código, necessário para uma paginação, mas obtenho apenas uma excessão ao executá-lo:
[code] public Integer count(List<Criterion> restricoes) {
Criteria c = this.session.createCriteria(this.persistentClass);
if (restricoes != null) {
for (Criterion criterion : restricoes) {
c.add(criterion);
}
}
return (int) c.setProjection(Projections.rowCount()).uniqueResult();
}[/code]
Excessão obtida ao executar:
[code]
Hibernate:
/* criteria query / select
count() as y0_
from
TB_ATENDIMENTO this_
Exception in thread “main” java.lang.ClassCastException: java.lang.Long cannot be cast to java.lang.Integer
at br.com.agets.dao.hibernate.HibernateGenericDAO.count(HibernateGenericDAO.java:46)
at br.com.agets.util.TestaConta.main(TestaConta.java:21)[/code]
Pessoal a dúvida é que ao obter este resultado preciso retornar um Int, porém não consigo. apesar de já tentar o parse não resolve…
Como proceder?