Hi all,
I'm using Jboss 2.4.1 with an Oracle DB. I got myself a set of cmp entity beans which contain a member parent_id, pointing to another of these ejbs.
Now, removing an ejb #pk should result in dependant ejbs (i.e. those with parent_id = pk) to be kept in storage, but with an parent_id of null.
Here's the code I'm trying to achieve this with (from an facade ejb):
Iterator i = avlhome.findByParent_ID(pk).iterator();
while(i.hasNext()) {
AVList avl = (AVList)i.next();
AVListData avldata = avl.getData();
avldata.parent_id = null;
avl.setData(avldata);
}
avlhome.findByPrimaryKey(pk).remove();
This code results in a RemoveException: Could not remove [insert pk here], seemingly because the oracle db has a referential integrity constraint on column parent_id. After disabling this constraint, everything runs just fine.
Is there a way to do the remove process and have the db constraint enabled?
This might be fixed in 2.4.3- something like it was.