hibernate critères d'interrogation de tables dans n:m relation

Je suis en train de construire une requête avec hibernate critères pour le scénario suivant:

  • Deux entités: l'Indicateur et d'un rapport (chacune avec leurs propres tableaux, classes, etc.)
  • un indicateur peut être utilisé dans de zéro à de nombreux rapports
  • un rapport utilise zéro à plusieurs indicateurs
  • j'ai donc une table d'intersection pour stocker la relation
  • la relation est définie dans les deux classes et de leur hibernation mappages
  • dans l'INTERFACE utilisateur, l'utilisateur peut sélectionner un ou plusieurs rapports (entre autres choses), et je voudrais interroger la base de données pour les Indicateurs utilisés dans ces rapports

J'ai essayé ce qui suit:

criteria.add(Restrictions.in("Reports", selectedReports));

mais tout ce que j'obtiens est une étrange requête SQL avec

where this_.Indicator_ID in (?)

et puis JDBC exception (paramètre manquant)

Des idées? Merci.

Remarque: j'ai regardé dans L'interrogation ManyToManyrelationship avec Hibernate Critères, mais la solution retenue, il est de construire un sql personnalisée-chaîne ...

InformationsquelleAutor Thorsten | 2009-01-02