This week's book giveaway is in the Servlets forum.
We're giving away four copies of Murach's Java Servlets and JSP and have Joel Murach on-line!
See this thread for details.
The moose likes Object Relational Mapping and the fly likes I get a ClassCastException Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Murach's Java Servlets and JSP this week in the Servlets forum!
JavaRanch » Java Forums » Databases » Object Relational Mapping
Bookmark "I get a ClassCastException" Watch "I get a ClassCastException" New topic
Author

I get a ClassCastException

Songezo Nkukwana
Ranch Hand

Joined: Nov 27, 2008
Posts: 51
Learning how to use Hibernate Criteria, i get the following error



here ->


Pojo ->


Probably complaining about casting Object to TestRank? but this works



???
Paul Sturrock
Bartender

Joined: Apr 14, 2004
Posts: 10336

If you use Projections this way your result will be a List of arrays of Objects, not a List of POJOs. Given you have all the properties you are Projecting already in your POJO I don't see what benefit using Projections is giving you here. What is it you are trying to achieve?


JavaRanch FAQ HowToAskQuestionsOnJavaRanch
Songezo Nkukwana
Ranch Hand

Joined: Nov 27, 2008
Posts: 51
Paul Sturrock wrote:If you use Projections this way your result will be a List of arrays of Objects, not a List of POJOs. Given you have all the properties you are Projecting already in your POJO I don't see what benefit using Projections is giving you here. What is it you are trying to achieve?


If you don;t mind could you please explain the use of projections.property? I'm new to hibernate and busy using examples but some are not clear enough ... Thanks Paul
Paul Sturrock
Bartender

Joined: Apr 14, 2004
Posts: 10336

You might use Projections to query for properties not on the object you are querying, for example a derived property (thing average, maximum etc.) Or you might use them to create a new, unmapped object at runtime. If all you are doing is returning the properties of an already mapped object then you don't need to use them.
Songezo Nkukwana
Ranch Hand

Joined: Nov 27, 2008
Posts: 51
Paul Sturrock wrote:You might use Projections to query for properties not on the object you are querying, for example a derived property (thing average, maximum etc.) Or you might use them to create a new, unmapped object at runtime. If all you are doing is returning the properties of an already mapped object then you don't need to use them.


How should i interpret the following 'incomplete' queries?



Perhaps am trying to figure which should i use for one to many relationship?
Songezo Nkukwana
Ranch Hand

Joined: Nov 27, 2008
Posts: 51
In fact Paul, looking at the POJO i posted, how would i write a Criteria query to get all RankProfiles with a specified id? Note that RankProfile has a many to one Rank relationship, so a Rank can be associated with many RankProfiles ... I think given such examples, i may be set to begin coding my Criterion queries
Paul Sturrock
Bartender

Joined: Apr 14, 2004
Posts: 10336

What you might do is add another criterion on rankProfiles that matches on id. Have a look at this for an example.
Songezo Nkukwana
Ranch Hand

Joined: Nov 27, 2008
Posts: 51
I tried these two methods




Both seem to work, which one is recommended? Would they work for lazy-initialization/loading?
 
It is sorta covered in the JavaRanch Style Guide.
 
subject: I get a ClassCastException
 
Similar Threads
Issue in annotating DAO using spring 3.0
Problem with sessions: Always getting old session id.
compator and treemap key/data
A method that removes the first card from the deck and returns it?
duplicate Mapping Exception : duplicate collection role mapping