While the entities are all within the same navigation and request, you may get
different entities due to entity manager flushes when queries are run.
When you execute a query, it can flush the entity manager therefore
invalidating the entity manager entity cache.
For example :
| MyClass a = entityManager.find(MyClass.class,id);
| MyList = entityManager.createQuery("...").getResultList();
| MyClass b = entityManager.find(MyClass.class,id);
|
Here, I believe 'a' and 'b' would be different objects representing the same
entity with the same id because the query caused a flush which invalidated the
cache and caused the entity manager to create and load a new instance of the
entity.
What you could try, to diagnose the problem a bit is adding :
| entityManager.save(a);
| entityManager.save(b);
|
If one of them is a stale detached object, then the entity manager will
complain.
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4109597#4109597
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4109597
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user