Hi,

I'm wondering, why some collection fields in the pojo classes are marked

    * @hibernate.bag lazy="true" inverse="true" cascade="delete"

and others

* @hibernate.set lazy="true" order-by="name" inverse="true" cascade="all-delete-orphan"

The two relationships marked as hibernate.bag are WebSiteData.permissions and UserData.permissions. What special functionality of the permissions relationships requires the hibernate.bag annotation? What differentiates hibernate.bag from hibernate.set? My understanding is that hibernate.set is a special kind of Set, that can be ordered, etc. hibernate.bag seems to allow duplicates, is that why it's used for permissions? The application logic doesn't suggest, that duplicates must be stored. Also, permissions do have primary keys, and the documentation in

http://anonhibernate.labs.jboss.com/trunk/Hibernate3/src/org/hibernate/mapping/Bag.java

suggests, that the items stored in a Bag don't have ids.

Thanks!

-- markus.

Reply via email to