Hello all. Back in June (23rd), Bill Holloway solved an 'illegal attempt to associate a collection with two open sessions' hibernate exception by using merge() after reattaching a detached object: Re: T5 Creating new hibernate persistent entity via beaneditform http://mail-archives.apache.org/mod_mbox/tapestry-users/200706.mbox/[EMAIL PROTECTED]
I wasn't quite convinced with this because that exception (though often maligned!) is usually quite accurate. Moreover, if there were two sessions in play, using merge() would effectively _avoid_ the issue by hydrating a new _copy_ of the (supposedly) detached object. So i've been digging around (since, rather inevitably, i'm also seeing this exception), and i don't see where the HibernateSessionManagerImpl is actually _closing_ the thread local session... What am i missing? It seems unlikely we've been geting away with not closing sessions. Where might this be happening? To test the theory i patched HibernateSessionManagerImpl to close the session immediately after committing: public void threadDidCleanup() { _transaction.commit(); _session.close(); } This gets rid of my 'illegal attempt...' exceptions! Any insight appreciated. Thanks, lasitha. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]