I have found a way to deal with this problem. It has resulted in a few more questions, but here it goes.
For Hibernate not to load all attributes of my subclasses, I'm using hql to select only the ones I want and passing them to an apropriate superclass constructor, like that (from Hibernate's manual):
Code:
select new Family(mother, mate, offspr)
from DomesticCat as mother
join mother.mate as mate
left join mother.kittens as offspr
It's working, but the problem is the returned instance seems to be transient... Is that a way to make it persistent?
Thanks again!