Tach zusammen!
Der EntityManager verhält sich nicht so wie ich es vermutet habe. Vielleicht kann mir ja jemand sagen, was wirklich passiert.
Ich habe eine Methode mit folgendem Source code:
Code:
PersonSessionBean bean = (PersonSessionBeanIf)ctx.lookup([...]);
final Person p1 = new Person( "Hans", "Wurst"); // die ID der Person bleibt "null"
final Person p2 = bean.createPerson( p1 ); // Hier stand vorher "person" - was natürlich Quatsch war...
=== Bean Code Start ===
[...]
EntityManager em;
public Person createPerson( final Person person )
{
em.persist( person );
return person;
}
[...]
=== Bean Code Ende ===
Nun hat p2 eine ID.
Nun erwarte ich eigentlich, dass p1 ebenfalls eine ID besitzt und zwar die gleiche wie p2, denn nach meinem Verständnis müssten die beiden Objekte p1 und p2 doch vollkommen identisch sein, oder nicht?
Was mache ich falsch bzw. was verstehe ich falsch?
Über rasche Hilfe würde ich mich sehr freuen!
Freundlicher Gruß, EH