-->
These old forums are deprecated now and set to read-only. We are waiting for you on our new forums!
More modern, Discourse-based and with GitHub/Google/Twitter authentication built-in.

All times are UTC - 5 hours [ DST ]



Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 
Author Message
 Post subject: Objekt von einer session evicten und an andere übergeben
PostPosted: Wed Apr 04, 2007 4:55 pm 
Beginner
Beginner

Joined: Thu Jan 04, 2007 5:44 am
Posts: 26
Location: Innsbruck - Sivas(TR) - Bregenz
Need help with Hibernate? Read this first:
http://www.hibernate.org/ForumMailingli ... AskForHelp

Hibernate version:

Mapping documents:

Code between sessionFactory.openSession() and session.close():

Full stack trace of any exception that occurs:

Name and version of the database you are using:

The generated SQL (show_sql=true):

Debug level Hibernate log excerpt:



Hi. Ich habe 2 session eine fürs lesen und das andere fürs schreiben. Nun würde ich ein objekt vor dem speichern von der lesesession mit

lesesession.evict(object x);

lösen und an die schreibesession übergeben damit ich

irgendwie so

schreibsession.xxx(x); //nehme das objekt auf
schreibsession.saveOrUpdate(x);

das objekt speichern kann.

Das objekt wurde mit der lesesession geladen und in mit gettern und settern (auch collections add, remove) verändert.

..hab replicate und merge verwendet.. aber klappt nicht so ganz.. gibt es da ein lösung?

Problems with Session and transaction handling?

Read this: http://hibernate.org/42.html


Top
 Profile  
 
 Post subject:
PostPosted: Wed Apr 18, 2007 9:57 am 
Regular
Regular

Joined: Thu Jan 27, 2005 8:58 am
Posts: 80
Was Du benötigst ist die Lock Methode:

lock

public void lock(Object object,
LockMode lockMode)
throws HibernateException

Obtain the specified lock level upon the given object. This may be used to perform a version check (LockMode.READ), to upgrade to a pessimistic lock (LockMode.UPGRADE), or to simply reassociate a transient instance with a session (LockMode.NONE). This operation cascades to associated instances if the association is mapped with cascade="lock".

Parameters:
object - a persistent or transient instance
lockMode - the lock level
Throws:
HibernateException

sprich mit
schreibsession.lock(Object,LockMode.NONE);
kannst du das Objekt an die andere Session binden. gefährlich wird es hier aber wenn bereits ein anderes Objekt mit dem gleichen Identifier an diese Session gebunden wurde. Dann wirst Du einen Fehler bekommen. Warum willst Du überhaupt zwischen den Sessions wechseln?


Last edited by FPC on Tue Apr 24, 2007 7:54 am, edited 1 time in total.

Top
 Profile  
 
 Post subject:
PostPosted: Mon Apr 23, 2007 10:02 am 
Regular
Regular

Joined: Fri May 12, 2006 4:05 am
Posts: 106
Hallo,

mican wrote:
schreibsession.xxx(x); //nehme das objekt auf
schreibsession.saveOrUpdate(x);



So wie ich das verstanden habe macht doch saveOrUpdate() nichts anderes, als das Objekt an die Session zu binden, also braucht man da ja eigentlich nix davor...

Der letzten Frage von FPC kann ich mich nur anschließen....

Gruß

piet


Top
 Profile  
 
Display posts from previous:  Sort by  
Forum locked This topic is locked, you cannot edit posts or make further replies.  [ 3 posts ] 

All times are UTC - 5 hours [ DST ]


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum

Search for:
© Copyright 2014, Red Hat Inc. All rights reserved. JBoss and Hibernate are registered trademarks and servicemarks of Red Hat, Inc.