je me refere a cette partie de la documentation :
http://www.hibernate.org/hib_docs/v3...tate-modifying
et en particulier a ca :
Je me trouve actuellement dans le cas qui est en gras. C'est a dire que j'ai un objet qui se trouve deja en session simplement pour savoir si il xiste ou non.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 saveOrUpdate() s'utilise dans le cas suivant : *si l'objet est déjà persistant dans cette session, ne rien faire *si un autre objet associé à la session a le même identifiant, lever une exception *si l'objet n'a pas de propriété d'identifiant, appeler save() *si l'identifiant de l'objet a une valeur assignée à un objet nouvellement instancié, appeler save() *si l'objet est versionné (par <version> ou <timestamp>), et la valeur de la propriété de version est la même valeur que celle assignée à un objet nouvellement instancié, appeler save() *sinon mettre à jour l'objet avec update()
Je recupere cet objet a l'aide de criteria.
D'un autre cote, je recupere un autre objet qui possede le meme identifiant mais auquel je souhaite faire des modifications. Lorsque j'execute la methode saveOrUpdate j'ai cette exception qui est leve m'indiquant que l'objet existe deja en session.
Ya un t-il un moyen d'enlever cette objet de la session ?
Ou faut-il absolument proceder autrement?
Partager