This is not a bug. HQL is an OO query language. You've queried the
superclass, not the subclass. It seems pretty natural to me that you
can't order by a subclass attribute. What you want and the patch provided does work only in particular cases. "from java.lang.Object o order by o.publicPrice" cannot be done in SQL since java.lang.Object has to be queried in several SQL SELECTs I recommend you order at the Java level 2.1 is *not* abandonned. We are actively providing bug fixes and support of the 2.1 family. We are working very hard on H3 to provide tons of new features, you can understand we cannot backport and keep several branch of code in a feature working process. Spring integration of H3 should be pretty straightforward (import update net.sf.hibernate -> org.hibernate) That's basically all you need (maybe check for HibernateException since it moved to the RuntimeException hierarchy). March, Andres wrote: Well, couldn't it be reclassified as a bug fix? Not being able to navigate associations because of a hard coded "this" in the construction of the order by seems like something many people would face. I could be wrong.Anyway this patch has been around a long time and as far as I can tell was submitted properly. More importantly H3 is not even released and support for it in Spring is even farther off. Any reason 2.1 is being abandoned so soon? I'm not asking for another 2.1 release. I don't see the harm in applying it to 2.1 CVS head but maybe I'm short-sighted.-----Original Message----- From: Emmanuel Bernard [mailto:[EMAIL PROTECTED]] Sent: Wednesday, September 29, 2004 12:59 PM To: March, Andres Cc: William Draï; Emmanuel Bernard; [EMAIL PROTECTED] Subject: Re: [Hibernate] Polymorphic queries, where and order by Sorry, no new feature will be added to the 2.1 branch. March, Andres wrote:We can't use H3 unfortunately because we do not have enough time to add H3 support to Spring. Is there any way this patch can be applied to H2? ------------------------------------------------------------------------ *From:* William Draï [mailto:[EMAIL PROTECTED]] *Sent:* Wednesday, September 29, 2004 11:22 AM *To:* Emmanuel Bernard *Cc:* March, Andres; [EMAIL PROTECTED] *Subject:* Re: [Hibernate] Polymorphic queries, where and order by I haven't yet tested with H3. I think there were no change logs related to this. I will try as soon as I have enough time. We can live without this "feature" for a few more weeks. Thank you for your anwser. Speaking from memory, Gavin did implement something on the (now dead 2.2 branch). It now has been reporded on H3. Did you test it? I can remembe, he'd implemented the transparent subclassing (no special keyword). March, Andres wrote: I'm sorry if I expand the subject a little. We pulled a patch off theforums some where that allows us to order by any association. I was wondering why this patch never got applied. It seems it would be useful in this situation as well. I am really uncomfortable using a patched hibernate because there are less eyes on it and it makes upgrading harder. I can submit the patch as we've applied it if you like. But also let me know if there is any reason for not allowing this type of functionality. It has been extremely useful to us in our searches as I think it would be to others.-----Original Message----- From: [EMAIL PROTECTED] <mailto:hibernate-[EMAIL PROTECTED]> [mailto:hibernate-devel-[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>] OnBehalf Of William DraïSent: Tuesday, September 28, 2004 1:31 AM To: [EMAIL PROTECTED] <mailto:hibernate-[EMAIL PROTECTED]>Subject: [Hibernate] Polymorphic queries, where and order by Let's say we have the following (simplified) mapping : <class name="A" table="T"> <property name="field1" type="string"/> <subclass name="B"> <property name="field2" type="string"/> </subclass> </class> Now we can execute any HQL query on the class A using the field1, for example "from A a where a.field1 like 'anything%'" or "from A a order bya.field1"The problems come when we want to use the field2 with the same queries. Of couse in simple SQL it is possible to do select * from T order by field2 But in HQL, "from A a order by a.field2" rightly fails because field2 is not defined for class A. This causes problems in sortable or filtered data tables where the user can sort or filter by any column he wants. There is currently only two options : - allowing to sort only on columns of class A : possible but my users won't be really happy - "casting" the query to class B when the user sorts on a column of class B : that means that the results count of the query is not the same when it is sorted than when it is not ; it completely breaks the semantics of sorting/filtering I understand it does not follow the OO approach of HQL but it would be really useful to have an additional syntax to allow using fields of the subclass in HQL queries, something like "select a from A+ a order by a.field2", or maybe an option in the Query interface like query.setUseInheritedProperties(true). What do you think of this ? Note : this is an extension of the JIRA HB-792 and could allow to resolve this case in a better way William ------------------------------------------------------- This SF.Net email is sponsored by: YOU BE THE JUDGE. Be one of 170 Project Admins to receive an Apple iPod Mini FREE for your judgement on who ports your project to Linux PPC the best. Sponsored by IBM. Deadline: Sept. 24. Go here: http://sf.net/ppc_contest.php _______________________________________________ hibernate-devel mailing list [EMAIL PROTECTED] <mailto:hibernate-[EMAIL PROTECTED]>https://lists.sourceforge.net/lists/listinfo/hibernate-devel------------------------------------------------------- This SF.net email is sponsored by: IT Product Guide on ITManagersJournal Use IT products in your business? Tell us what you think of them. Give us Your Opinions, Get Free ThinkGeek Gift Certificates! Click to find outmorehttp://productguide.itmanagersjournal.com/guidepromo.tmpl _______________________________________________ hibernate-devel mailing list [EMAIL PROTECTED] <mailto:hibernate-[EMAIL PROTECTED]>https://lists.sourceforge.net/lists/listinfo/hibernate-devel -- Emmanuel Bernard 01.55.21.52.14 Fnac - DSI Direction France - Nouvelles technologies 67, boulevard du Gal Leclerc 92612 Clichy Cedex-- Emmanuel Bernard [EMAIL PROTECTED] http://www.hibernate.org -- Emmanuel Bernard [EMAIL PROTECTED] http://www.hibernate.org |
- [Hibernate] Polymorphic queries, where and order by William Draï
- RE: [Hibernate] Polymorphic queries, where and order... March, Andres
- Re: [Hibernate] Polymorphic queries, where and o... Emmanuel Bernard
- Re: [Hibernate] Polymorphic queries, where a... William Draï
- RE: [Hibernate] Polymorphic queries, where and order... March, Andres
- RE: [Hibernate] Polymorphic queries, where and order... March, Andres
- RE: [Hibernate] Polymorphic queries, where and order... March, Andres
- Re: [Hibernate] Polymorphic queries, where and o... Emmanuel Bernard
- RE: [Hibernate] Polymorphic queries, where and order... March, Andres
- Re: [Hibernate] Polymorphic queries, where and o... Emmanuel Bernard