Hi,
I have a set of calendar entities in my application, which have relations as
follows:
Calendar-->CalendarMonth 1:n (cascade delete)
CalendarMonth-->CalendarWeek 1:n (cascade delete)
CalendarWeek-->CalendarDay 1:n (cascade delete)
additionally, CalendarDay refers to itself with a 1:1 relation (a
reference to another date to compare to). The XDoclet markup for the relation
is:
/**
* @ejb.interface-method view-type="local"
*
* @ejb.relation
* name="calendar_day-cmp20-calendar_day-cmp20"
* role-name="calendar_day-cmp20-1-has-calendar_day-cmp20-2"
* target-ejb="CalendarDay"
* target-role-name="calendar_day-cmp20-2-has-calendar_day-cmp20-1"
* target-multiple="no"
*
* @jboss.relation-mapping style="foreign-key"
*
* @jboss.target-relation
* fk-constraint="true"
* fk-column="compare_to_id"
* related-pk-field="nsuk"
*
*/
public abstract ie.dcs.roches.interfaces.CalendarDayLocal getCompareTo();
Other tables, mostly outside the scope of the J2EE app refer to CalendarDay.
My intention is to use referential integrity to prevent modification of a
calendar if any other table in the database has a reference to it. When
somebody tries to update a calendar, it is first removed, so if it is being
referenced, a RemoveException is thrown, and the transaction aborted.
This seems to work fine with the exception of the CalendarDay-->CalendarDay
relation. For example, if I define a calendar for 2005, then one for 2006, and
lets take 2 days 'jan12006', and 'jan12005', where
jan12006.compareTo==jan12005. I would expect that any attempt to remove
jan12005 would throw a RemoveException (any attempt to remove it with SQL in a
DB client does indeed fail). Instead, jan12006.compareToId is set to NULL, and
the relation removed (I've set logging to TRACE and can see the FK being
nulled).
Is this expected behaviour? Is there any way of preventing this and forcing
referential integrity?
Any suggestions much appreciated!
Thanks,
John
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=3873953#3873953
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&p=3873953
-------------------------------------------------------
SF email is sponsored by - The IT Product Guide
Read honest & candid reviews on hundreds of IT Products from real users.
Discover which products truly live up to the hype. Start reading now.
http://ads.osdn.com/?ad_id=6595&alloc_id=14396&op=click
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user