I found a strange behaviour of EntityManager for the Entity Hierarchy using 
JOINED strategy (I have not tested yet other strategies). 

Let me assume that I have a hierarchy of joined entities derived from, for 
example, a Vehicle base class:


  |         Vehicle 
  |         /  |  \ 
  |        /   |   \ 
  |       /    |    \ 
  | Ground    Air    Water 
  |         /  |  \ 
  |        /   |   \ 
  |       /    |    \ 
  | Airbus   Boeing  Cessna 
  |         /  |  \ 
  |        /   |   \ 
  |       /    |    \ 
  |    B737   B747   B777
  | 

When I'm trying to remove a Vehicle entity, entity manager removes all related 
child records from db (Vehicle->Air->Boeing->B747). It's OK. 

When I'm trying to remove a B747 entity, entity manager also removes all 
ancestor records from db (including Boeing, Air and Vehicle), but I don't need 
it :-(. I just tried to remove only B747 record, why entity manager supposed 
that I need to remove all ancestors too? I think that this approach is not 
right. Because, when I want to remove a B747 record only from db (for example 
an ailiner with registration number XXXXXX), I didn't want to remove all 
related ancestors include Vehicle. 

When I want to remove just Boeing related records from my db, it means that I 
just wanted to remove only Boeing records including all its childs (B737, B747 
and B777), but not its anchestors (Air and Vehicle). 


if you think that my thougts on this subject is not on right way or do not 
cover OOP concepts, please suggest me some resources and will try to study them 
to understand inheritance from yours point of view. 


-- 
rustam bogubaev

View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4041664#4041664

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4041664
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user

Reply via email to