[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-1685?page=c...
]
Philip Saville commented on HHH-1685:
-------------------------------------
The work around doesn't work when trying to add criterion to the subcriteria which is
now only an alias.
I am trying to convert my code to use DetachedCriteria instead of Criteria and what was
working for one or two deep joins does not work when using DetachedCriteria.
Originally, when using "createCriteria" method - the error was:
org.springframework.orm.hibernate3.HibernateQueryException: could not resolve property:
ALIAS_NAME_FOR_SUBCRITERIA of: SUBCRITERIA_OBJECT; nested exception is
org.hibernate.QueryException: could not resolve property: ALIAS_NAME_FOR_SUBCRITERIA of:
SUBCRITERIA_OBJECT
org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:651)
org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:408)
org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:367)
org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:328)
Now, when trying the work around "createAlias" method - the error is:
org.springframework.orm.hibernate3.HibernateQueryException: could not resolve property:
FIELD_IN_SUBCRITERIA_TABLE of: CRITERIA_OBJECT; nested exception is
org.hibernate.QueryException: could not resolve property: FIELD_IN_SUBCRITERIA_TABLE of:
CRITERIA_OBJECT
org.springframework.orm.hibernate3.SessionFactoryUtils.convertHibernateAccessException(SessionFactoryUtils.java:651)
org.springframework.orm.hibernate3.HibernateAccessor.convertHibernateAccessException(HibernateAccessor.java:408)
org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:367)
org.springframework.orm.hibernate3.HibernateTemplate.execute(HibernateTemplate.java:328)
When will this issue be fixed? Can't someone just make the above mentioned change and
have it be part of the next build?
DetachedCriteria doesn't create alias on subcriteria
----------------------------------------------------
Key: HHH-1685
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-1685
Project: Hibernate3
Type: Bug
Components: query-criteria
Versions: 3.1.3
Reporter: John
Attachments: hhh1685-example.txt
DetachedCriteria has two createCriteria methods:
public DetachedCriteria createCriteria(String associationPath) throws HibernateException
public DetachedCriteria createCriteria(String associationPath, String alias) throws
HibernateException
However, the code for both was identical - they called the inner criteria's
createCriteria(String) method. The version with the alias did not call the inner's
version with the alias. The following patch snipped shows the change:
public DetachedCriteria createCriteria(String associationPath, String alias)
throws HibernateException {
- return new DetachedCriteria( impl, criteria.createCriteria(associationPath) );
+ return new DetachedCriteria( impl, criteria.createCriteria(associationPath, alias) );
}
This bug was discovered while trying to link a 2-deep subquery to its parent via aliases.
(Surfacing this issue might only be possible with the patch HHH-952 in place - I'm
not sure. Seems like a bug regardless, as it definitely fixed my alias reference issue.)
I'll get an example posted shortly.
--
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....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira