Sto migrando alcune delle mie istruzioni hql ai Criteri ora sto calcolando un problema: La proprietà entity è di tipo Integer ma ho bisogno di un like con la ricerca con caratteri jolly, quindi in hql Io faccioHibernate Criteria, Integer e "mi piace"
session.createQuery("from P1 where id like :id").setString("id", "%"+s+"%")
Nessun problema, Hibernate lancia String to Integer.
Se provo questo Criteri, ho solo un ClassCastException
String cannot be cast to Integer
Criteria crit = sessionFactory.getCurrentSession().createCriteria(P1.class);
crit.add(Restrictions.like("id",s)).addOrder(Order.asc("id")).setMaxResults(maxResults);
Perché gestire Hibernate entrambe le situazioni in modo diverso?
Questo non ha senso. Il motore di query stesso è in grado di gestirlo, ma il motore dei criteri non lo è. Sembra che ci sia un bug alla citeria impl. – onigunn