Hi Andy, Thanks for the quick reply, based on that I modified it as follow:
@Inject private HibernateSessionManager sessionManager; Object onSuccess() { final Long id = create.append(); sessionManager.commit(); new Thread(new Runnable() { public void run() { myThread.findMe(id); } }).start(); return null; } It seems working. A.c. Andy Huhn wrote: > > Hi Angelo, > > The MyCreate service creates a new record, but doesn't commit until > after MyThread is started. > > The MyThread service automatically gets a different Hibernate Session, > and thus can't see the record that hasn't been committed yet by the > other session. > > I'm not that familiar with MySQL, but my guess is that the InnoDB engine > supports transactions, while the MyISAM engine doesn't? > > If you want this record to be visible across two different threads, you > must commit before you start the second thread. Or perhaps it's simpler > not to use a second thread, and do everything in one session. > > Andy > > On Wed, 2008-02-06 at 22:33 -0800, Angelo Chen wrote: >> Hi, >> >> I have two services, namely MyCreate and MyThread, what they do is: >> > -- View this message in context: http://www.nabble.com/T5%3A-Hibernate-and-threaded-service-tp15328171p15329490.html Sent from the Tapestry - User mailing list archive at Nabble.com. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]