[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-3524) setFetchMode ignored if using createCriteria

Richard Ogin (JIRA) noreply at atlassian.com
Fri Aug 7 12:53:12 EDT 2009


    [ http://opensource.atlassian.com/projects/hibernate/browse/HHH-3524?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=33727#action_33727 ] 

Richard Ogin commented on HHH-3524:
-----------------------------------

@Stian

You need to specify JoinFragment.LEFT_OUTER_JOIN in your createCriteria() from the root node. To use your example, a.createCriteria("albums") would become a.createCriteria("albums", JoinFragment.LEFT_OUTER_JOIN).

To use my code as an example:

Criteria c = session.createCriteria(Company.class);
c.createCriteria("addresses", JoinFragment.LEFT_OUTER_JOIN).add( Restrictions.ilike("state", state, MatchMode.EXACT) );
c.setFetchMode("addresses", FetchMode.JOIN);

> setFetchMode ignored if using createCriteria
> --------------------------------------------
>
>                 Key: HHH-3524
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-3524
>             Project: Hibernate Core
>          Issue Type: Bug
>          Components: query-criteria
>    Affects Versions: 3.2.5
>         Environment: Hibernate 3.2.5, Oracle 8
>            Reporter: Peter Weemeeuw
>         Attachments: test.case.tar.gz
>
>
> Hi,
> It seems that criteria.setFetchMode gets ignored if you combine it with createCriteria to add a restriction.
> This works as expected:
> DetachedCriteria c = DetachedCriteria.forClass(MenuItem.class);
> c.setFetchMode("menuItemSubscriptions", FetchMode.JOIN);
> But in this case the join doesn't happen (and I get a LazyInstantiationException further on).
> DetachedCriteria c = DetachedCriteria.forClass(MenuItem.class);		
> c.setFetchMode("menuItemSubscriptions", FetchMode.JOIN);
> c.createCriteria("menuItemSubscriptions").add(
> 	Restrictions.eq("location", "B")
> );
> This does not happen if I set lazy="false" in the mappings
> file.
> Regards,
> Peter

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        


More information about the hibernate-issues mailing list