[Java lista] Spring/Eclipselink - izolációs szintek

Mariák Kálmán sirkalmi at kalmiesemese.hu
2011. Feb. 8., K, 21:14:01 CET


Ugyanaz az eredmény:
userExtension.setUser(user);
em.persist(user);
em.persist(userExtension);
user = em.merge(user);
em.refresh(user);

A refresh-re dobja:
Entity no longer exists in the database: User [id=302, active=f, address=yyy, ....

Érdekesség, hogy a vissza setelésre szükség van az update metódusomban is különben ugyanaz a helyzet mint a createNewUser esetén:
@Override
public void updateUser(User user, UserExtension userExtension) {
  userExtension.setUser(user);
  user = em.merge(user);
  em.merge(userExtension);
  user.setExtension(userExtension);
}

On Tue, 2011-02-08 at 20:07 +0100, Bartuszek Viktor wrote:
> Közben láttam, hogy megoldottad úgy, hogy közvetlenül set-elted. Arra 
> azt válaszoltam volna többek közt, hogy
> akkor a refresh is menni fog, de ezzel meg most megleptél :O
> 
> Legalábbis a no longer résszel... ha azt mondta volna, hogy not 
> managed... bár azt sem értettem volna tranzakción belül.
> Érdekesség kedvéért:
> 
> em.persist(user);
> user = em.merge(user);
> em.refresh(user);
> 
> után mit mond?



További információk a(z) Javalist levelezőlistáról