JPA BigInteger und Langform

Habe ich ein Stück code wie folgt:

CriteriaBuilder cb = em.getCriteriaBuilder();
CriteriaQuery<Offer> query = cb.createQuery(Offer.class);
Root<Offer> root = query.from(Offer.class);
query = query.select(root).where(cb.equal(root.get(Offer_.companyID), company.getId()));
return em.createQuery(query).getResultList()

Nun, das sieht schön und gut, aber es gibt mir Probleme. Beide bieten.companyID und Unternehmen.id sind lang.

Hier ist das, was log zeigt mir, dass hibernate ist zu tun:

 Hibernate: SELECT C.id FROM company C INNER JOIN company_operators cm
 ON cm.company_id = c.id WHERE cm.operators_id = '503'

- Und dies ist der Fehler, den ich bekommen:

12:47:00,581 ERROR [org.jboss.ejb3.invocation] (http--0.0.0.0-9080-5) JBAS014134: EJB Invocation failed on component OfferRepository for method public java.util.List org.jboss.tools.example.richfaces.data.OfferRepository.getOffersbyMemberId(java.lang.Long) throws java.lang.Exception: javax.ejb.EJBException: java.lang.ClassCastException: java.math.BigInteger cannot be cast to java.lang.Long

Was könnte hier das problem?

InformationsquelleAutor Zlatko | 2014-01-05

Schreibe einen Kommentar