views:

1552

answers:

4

Hi,

I have posted a question few days ago about Querying on collections with the Criteria API and after all the answers i see that the thing that i am trying is not possible with the Criteria, there is a bug for the situation in nhibernate and also in hibernate

I was using DetachedCriteria to get all criterias together and the list is really long. The last circle of chain is buggy criteria so i need to change all my detachedcriteria to HQL.

So my question is is there any tool or way to convert Criteria to HQL.

or

Is there any way to get Criteria and Hql work together?

An Article about the bug in nhibernate

Thanks is advance

A: 

What version of nHibernate are you using? I think using the latest version might solve your problem as the 2.0 GA has a lot of breaking changes.

renegadeMind
I am using 2.0.1 GA, it is the latest i guess
Barbaros Alp
+2  A: 

reposting from the hibernate forums... not sure if it is relevant to nhibernate or up to date


from: max Hibernate Team

Posted: Sun Dec 24, 2006 7:12 am

it is a very stubborn folklore that criteria translates to HQL. Criteria goes directly to SQL, but there is no direct public api to get it programmatically.

...

translating twice isn't very efficient ;)

http://forum.hibernate.org/viewtopic.php?t=968990&view=next&sid=50454aa6cec8d482198117fbd398ca70

jedierikb
+2  A: 

I have sent an email to Ayende Rahien about the issue and thank to him for replying.He said that

the answer is that there is no such tool, but conversion is usually pretty easy.

Barbaros Alp
Excellent answer. An example would be nice...
mark
A: 

I have modified the Hibernate Criteria API to generate JPQL queries by trying to preserve the interface mostly similar. Name of my project is Criteria2JPQL at:

https://sourceforge.net/projects/criteria2jpql/

Since this translation is a simple in-memory operation that generates a standard JPQL query, there is not a considerable performance problem. On the other hand, the idea of this project has originated from the poor performing native sql queries of Hibernate Critera including lots of unnecessary joins. We have experienced using Criteria2JPQL in our project at my company and observed those unnecessary joins disappeared.

omers