Hallo,
ohne genau zu wissen, wie deine Mappings aussehen, hab ich mich folgendem Criteria ein Ergebnis bekommen:
Code:
Criteria criteria = session.createCriteria(Feiertag.class);
criteria.add(Expression.between(
"datum",
dateFormat.parse("2005-12-01"),
dateFormat.parse("2005-12-31")));
Criteria standortCriteria = criteria.createCriteria("standortSet");
standortCriteria.add(Expression.eq("standortId",new Integer(1)));
(standortSet ist die many-to-many-Property der Klasse Feiertag).
Die daraus resultierende Query war
Code:
select this.feiertag_id as feiertag1_1_, this.bezeichnung as bezeichn2_1_, this.datum as datum1_, x0_.standort_id as standort1_0_, x0_.bezeichnung as bezeichn2_0_ from feiertag this inner join standort_feiertag standortse1_ on this.feiertag_id=standortse1_.feiertag_id inner join standort x0_ on standortse1_.standort_id=x0_.standort_id where this.datum between ? and ? and x0_.standort_id=?
Falls diese Info dir nicht hilft, poste bitte deine Mappings und dann probiere ich es aus.