I tried out your mappings with a few minor changes to make it run [in Hibernate 3.1.2] : -
1) commented out UserImpl.
2) commented out discriminator in OrderImpl. Not sure what it is doing here.
On deleting a DfaCampaignImpl with a Set of ObjectFilterImpl I get,
with inverse="false"
Code:
Hibernate: update LOGIN_RULE set CAMPAIGN_ID=null where CAMPAIGN_ID=?
Hibernate: delete from LOGIN_RULE where LOGIN_RULE_ID=?
Hibernate: delete from BUY where BUY_ID=?
Hibernate: delete from ORDERS where ID=?
with inverse="true"
Code:
Hibernate: delete from LOGIN_RULE where LOGIN_RULE_ID=?
Hibernate: delete from BUY where BUY_ID=?
Hibernate: delete from ORDERS where ID=?
(I had to manually set campaignId since you don't have a many-to-one in ObjectFilter)
Not sure why it is not working for you.