So you need:- bi-directional relationship- both sides with save cascade (cascade.PERSIST or cascade.ALL)- using "vanilla" beans (not enhanced)
Save could go into infinite loop.
The issue being that for non-enhanced beans ("vanilla") you can't tell when it has been saved (due to insert/update testing) ... so it would cascade between the 2 relationships.
Fixed in HEAD.