Hi,
I am having association in pFieldSet.hbm.xml:
<set inverse="true" lazy="false" name="pFields" cascade="all"> <key column="FIELD_SET_ID"/> <one-to-many class="PFieldVO"/> </set>
I am fetching the records using criteria: Session session = HibernateUtil.getSessionFactory().getCurrentSession(); Criteria crit = session.createCriteria(PFieldSetVO.class); crit.add(Restrictions.eq("EntityId", requestVO.getEntityId())); crit.add(Restrictions.eq("context", requestVO.getContext())); crit.createAlias("pFields", "pField",CriteriaSpecification.LEFT_JOIN); crit.add(Restrictions.eq("pField.isRemoved", false)); crit.addOrder( Order.asc("pField.dataType") ); crit.setResultTransformer(CriteriaSpecification.DISTINCT_ROOT_ENTITY); List<PFieldSetVO> results = crit.list();
Here all working fine except crit.addOrder( Order.asc("pField.dataType") );. I want to order the collection records of pFields based on dataType column that is of PFieldVO class. Noted that crit.add(Restrictions.eq("pField.isRemoved", false));is working fine.
whereas EntityId and context belong to PFieldSetVO class.
Any idea why ordering is not taking place in collection/set here.
Thanks
|