/* * (non-Javadoc) * * @see dao.PersonroleDao#findByPersonAndPersonroleTypeAndOU(java.lang.Integer, * java.lang.Integer, entities.OU) */ @SuppressWarnings("unchecked") public List findByPersonAndPersonroleTypeAndOU( Integer personid, Integer personroletypeid, OU ou) { getSession().beginTransaction(); Query query = getSession() .createQuery( "select p from personrole_ou prou where prou." + getType().getName() + " in (select id from " + getType().getName() + " pr where pr.person = :p_personid and pr.personroletype = :p_personroletypeid)"); query.setParameter("p_personid", personid); query.setParameter("p_personroletypeid", personroletypeid); List personroles = query.list(); getSession().getTransaction().commit(); return personroles; } }