Let\'s say I have two entities:
@Entity
public class Customer implements Serializable {
...
@OneToMany(cascade=ALL, mappedBy=\"customer\")
public
If you retrieve the customer from the same transaction, then yes, it's expected behavior. The reason is that the EntityManager returns the order it has in its first-level cache, and that you created yourself, without adding any order to its set of orders. It's your responsibility to maintain the coherence of the object graph by maintaining the two sides of the association:
order.setCustomer(customer);
customer.addOrder(order);