[hibernate-issues] [Hibernate-JIRA] Commented: (HHH-2310) LazyInitializationException: Initializing many-to-one and one-to-one associations to a maximum of max-fetch-depth fails when using a SQLProjection on a Criteria generated Query

Aruna V (JIRA) noreply at atlassian.com
Thu Feb 12 15:33:38 EST 2009


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

Aruna V commented on HHH-2310:
------------------------------

Could u let me know the solution for this issue. I mean how to use inner object column instead of alias

> LazyInitializationException: Initializing many-to-one and one-to-one associations to a maximum of max-fetch-depth fails when using a SQLProjection on a Criteria generated Query
> --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HHH-2310
>                 URL: http://opensource.atlassian.com/projects/hibernate/browse/HHH-2310
>             Project: Hibernate Core
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 3.0.5
>            Reporter: Nico De Groote
>            Priority: Critical
>
> Initializing many-to-one and one-to-one associations to a maximum of max-fetch-depth fails when using a SQLProjection on a Criteria generated Query
> Following scenario occurs.
> I have a max-fetch-depth = default value.
> I have a the following businessobject having the following associations.
> BO -> BO2 (One to one)
> BO -> list of BO3 (one to many)
> I want to query for BO objects with the where clause containing a condition on one of the properties of the BO3 objects.
> When I now generate my query via the Criteria API and having the following projection set to retrieve only my BO objects (and none of the outer joinables)
> 	      Projection projection = Projections.sqlProjection( 
> 	            "{alias}." + primaryKeyColumn + " theObj__", new String[]{"theObj__"}, 
> 	                  new Type[]{Hibernate.entity(BO.getClass())}); 
> I get my BO objects but the BO2 object is not initialized, as it should ne because of the max-fetch-depth.
> When not using the Projection I do get the one-to-one relation (BO2 object) as the max-fetch-depth is default value, but  the query takes too much time because of the non required properties for the outerjoinable associations in the select clause.
> It seams that the fetching of the many-to-one and the one-to-one associations for the max-fetch-depth is disabled when using projections. 
> Or am I missing the point here? 
>  
>  

-- 
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