Salut,

Je connaissais auparavant l'api criteria d'hibernate et la je galère a fond avec a l'api JPA.

La requête que je tente de passer en criteria est la suivante :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
String sql = "SELECT t from Transaction t left join t.category category left join t.payee payee ";
Voici ce que j'ai écrit pour l'instant en criteria :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
        CriteriaBuilder queryBuilder =  JPA.em().getCriteriaBuilder();
        CriteriaQuery qdef = queryBuilder.createQuery();
        Root<Transaction> transaction = qdef.from(Transaction.class);
 
        qdef.select(transaction.join("category",JoinType.LEFT)
                               .join("payee",JoinType.LEFT) );
Apparemment ca plante sur le second join. J'ai l'impression quand je me met en debug qu'il tente de faire un join entre payee et category.

Quelqu'un aurait un exemple d'utilisation des joins avec l'api JPA ?