Oki, thanks, I've posted to Spring mailing list with my problem ^g^ On Wed, Apr 2, 2008 at 11:14 PM, Laurie Harper <[EMAIL PROTECTED]> wrote:
> This isn't really a Struts issue, since you're asking how to drive your > service/dao layout from a thread outside the context of a Struts-served > request. What you need to do in that case is to manage the Hibernate session > from your worker thread. The thread needs to setup and open the Hibernate > session before starting its work, and clean it up afterwards. > > Since you're using Spring to wire your dependencies, you probably need to > go through Spring to setup the Hibernate session for the worker thread. The > Spring forums are probably the best place to seek advice with that. > > L. > > > Yayo wrote: > > > Sorry, more explanation is needed... I've got to launch a "batch > > process" > > it's not a batch but it's a long lasting process that could raise a > > timeout > > and tomcat will kill the worker thread... So I've launched a worker of > > my > > own to do the job and inform the user with a progress indicator or the > > like. > > > > Also I may want to launch my workers using Quartz scheduling features > > but... > > A new thread doesn't have an Hibernate Session attached to it. > > > > Now the circular reference. When I add proxies to my manager layer with > > an > > hibernateInterceptor wich needs a sessionFactory. Under the managers > > there > > are DAOs which depend on sessionFactory too and that's the cyclic > > reference. > > > > Now the trace. Notice that this is just a cut from it but the "cause" is > > just the same stack trace > > > > > > Related cause: > > org.springframework.beans.factory.BeanCreationException: Error creating > > bean > > with name 'filterManager' defined in ServletContext resource > > [/WEB-INF/spring/managers.xml]: Cannot resolve reference to bean > > 'filterManagerTarget' while setting bean property 'target'; nested > > exception > > is org.springframework.beans.factory.BeanCreationException: Error > > creating > > bean with name 'filterManagerTarget' defined in ServletContext resource > > [/WEB-INF/spring/managers.xml]: Cannot resolve reference to bean > > 'filterDao' > > while setting bean property 'filterDao'; nested exception is > > org.springframework.beans.factory.BeanCreationException: Error creating > > bean > > with name 'filterDao' defined in ServletContext resource > > [/WEB-INF/spring/daos.xml]: Cannot resolve reference to bean > > 'sessionFactory' while setting bean property 'sessionFactory'; nested > > exception is org.springframework.beans.factory.BeanCreationException: > > Error > > creating bean with name 'sessionFactory' defined in ServletContext > > resource > > [/WEB-INF/spring/hibernate.xml]: Cannot resolve reference to bean > > 'dataSource' while setting bean property 'dataSource'; nested exception > > is > > org.springframework.beans.factory.BeanCurrentlyInCreationException: > > Error > > creating bean with name 'dataSource': FactoryBean which is currently in > > creation returned null from getObject > > Related cause: org.springframework.beans.factory.BeanCreationException: > > Error creating bean with name 'filterManager' defined in ServletContext > > resource [/WEB-INF/spring/managers.xml]: Cannot resolve reference to > > bean > > 'filterManagerTarget' while setting bean property 'target'; nested > > exception > > is org.springframework.beans.factory.BeanCreationException: Error > > creating > > bean with name 'filterManagerTarget' defined in ServletContext resource > > [/WEB-INF/spring/managers.xml]: Cannot resolve reference to bean > > 'filterDao' > > while setting bean property 'filterDao'; nested exception is > > org.springframework.beans.factory.BeanCreationException: Error creating > > bean > > with name 'filterDao' defined in ServletContext resource > > [/WEB-INF/spring/daos.xml]: Cannot resolve reference to bean > > 'sessionFactory' while setting bean property 'sessionFactory'; nested > > exception is org.springframework.beans.factory.BeanCreationException: > > Error > > creating bean with name 'sessionFactory' defined in ServletContext > > resource > > [/WEB-INF/spring/hibernate.xml]: Cannot resolve reference to bean > > 'dataSource' while setting bean property 'dataSource'; nested exception > > is > > org.springframework.beans.factory.BeanCurrentlyInCreationException: > > Error > > creating bean with name 'dataSource': FactoryBean which is currently in > > creation returned null from getObject > > Related cause: org.springframework.beans.factory.BeanCreationException: > > Error creating bean with name 'filterManager' defined in ServletContext > > resource [/WEB-INF/spring/managers.xml]: Cannot resolve reference to > > bean > > 'filterManagerTarget' while setting bean property 'target'; nested > > exception > > is org.springframework.beans.factory.BeanCreationException: Error > > creating > > bean with name 'filterManagerTarget' defined in ServletContext resource > > [/WEB-INF/spring/managers.xml]: Cannot resolve reference to bean > > 'filterDao' > > while setting bean property 'filterDao'; nested exception is > > org.springframework.beans.factory.BeanCreationException: Error creating > > bean > > with name 'filterDao' defined in ServletContext resource > > [/WEB-INF/spring/daos.xml]: Cannot resolve reference to bean > > 'sessionFactory' while setting bean property 'sessionFactory'; nested > > exception is org.springframework.beans.factory.BeanCreationException: > > Error > > creating bean with name 'sessionFactory' defined in ServletContext > > resource > > [/WEB-INF/spring/hibernate.xml]: Cannot resolve reference to bean > > 'dataSource' while setting bean property 'dataSource'; nested exception > > is > > org.springframework.beans.factory.BeanCurrentlyInCreationException: > > Error > > creating bean with name 'dataSource': FactoryBean which is currently in > > creation returned null from getObject > > Related cause: org.springframework.beans.factory.BeanCreationException: > > Error creating bean with name 'filterManager' defined in ServletContext > > resource [/WEB-INF/spring/managers.xml]: Cannot resolve reference to > > bean > > 'filterManagerTarget' while setting bean property 'target'; nested > > exception > > is org.springframework.beans.factory.BeanCreationException: Error > > creating > > bean with name 'filterManagerTarget' defined in ServletContext resource > > [/WEB-INF/spring/managers.xml]: Cannot resolve reference to bean > > 'filterDao' > > while setting bean property 'filterDao'; nested exception is > > org.springframework.beans.factory.BeanCreationException: Error creating > > bean > > with name 'filterDao' defined in ServletContext resource > > [/WEB-INF/spring/daos.xml]: Cannot resolve reference to bean > > 'sessionFactory' while setting bean property 'sessionFactory'; nested > > exception is org.springframework.beans.factory.BeanCreationException: > > Error > > creating bean with name 'sessionFactory' defined in ServletContext > > resource > > [/WEB-INF/spring/hibernate.xml]: Cannot resolve reference to bean > > 'dataSource' while setting bean property 'dataSource'; nested exception > > is > > org.springframework.beans.factory.BeanCurrentlyInCreationException: > > Error > > creating bean with name 'dataSource': FactoryBean which is currently in > > creation returned null from getObject > > Related cause: org.springframework.beans.factory.BeanCreationException: > > Error creating bean with name 'filterManager' defined in ServletContext > > resource [/WEB-INF/spring/managers.xml]: Cannot resolve reference to > > bean > > 'filterManagerTarget' while setting bean property 'target'; nested > > exception > > is org.springframework.beans.factory.BeanCreationException: Error > > creating > > bean with name 'filterManagerTarget' defined in ServletContext resource > > [/WEB-INF/spring/managers.xml]: Cannot resolve reference to bean > > 'filterDao' > > while setting bean property 'filterDao'; nested exception is > > org.springframework.beans.factory.BeanCreationException: Error creating > > bean > > with name 'filterDao' defined in ServletContext resource > > [/WEB-INF/spring/daos.xml]: Cannot resolve reference to bean > > 'sessionFactory' while setting bean property 'sessionFactory'; nested > > exception is org.springframework.beans.factory.BeanCreationException: > > Error > > creating bean with name 'sessionFactory' defined in ServletContext > > resource > > [/WEB-INF/spring/hibernate.xml]: Cannot resolve reference to bean > > 'dataSource' while setting bean property 'dataSource'; nested exception > > is > > org.springframework.beans.factory.BeanCurrentlyInCreationException: > > Error > > creating bean with name 'dataSource': FactoryBean which is currently in > > creation returned null from getObject > > at > > > > org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:275) > > at > > > > org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1210) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:978) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:462) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:404) > > at java.security.AccessController.doPrivileged(Native Method) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:375) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:263) > > at > > > > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:170) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:260) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.getTypeForFactoryBean(AbstractBeanFactory.java:1187) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:617) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:456) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:224) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:202) > > at > > > > org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:143) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:653) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:611) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1039) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:950) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:462) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:404) > > at java.security.AccessController.doPrivileged(Native Method) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:375) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:263) > > at > > > > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:170) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:260) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.getTypeForFactoryBean(AbstractBeanFactory.java:1187) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:617) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:456) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:224) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:202) > > at > > > > org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:143) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:653) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:611) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1039) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:950) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:462) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:404) > > at java.security.AccessController.doPrivileged(Native Method) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:375) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:263) > > at > > > > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:170) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:260) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.getTypeForFactoryBean(AbstractBeanFactory.java:1187) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:617) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:456) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:224) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:202) > > at > > > > org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:143) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:653) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:611) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1039) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:950) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:462) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:404) > > at java.security.AccessController.doPrivileged(Native Method) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:375) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:263) > > at > > > > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:170) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:260) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.getTypeForFactoryBean(AbstractBeanFactory.java:1187) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:617) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:456) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:224) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:202) > > at > > > > org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:143) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:653) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:611) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1039) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:950) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:462) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:404) > > at java.security.AccessController.doPrivileged(Native Method) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:375) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:263) > > at > > > > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:170) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:260) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.getTypeForFactoryBean(AbstractBeanFactory.java:1187) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.getTypeForFactoryBean(AbstractAutowireCapableBeanFactory.java:617) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.isTypeMatch(AbstractBeanFactory.java:456) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:224) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanNamesForType(DefaultListableBeanFactory.java:202) > > at > > > > org.springframework.beans.factory.BeanFactoryUtils.beanNamesForTypeIncludingAncestors(BeanFactoryUtils.java:143) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:653) > > at > > > > org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:611) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireByType(AbstractAutowireCapableBeanFactory.java:1039) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:950) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:462) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:404) > > at java.security.AccessController.doPrivileged(Native Method) > > at > > > > org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:375) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:263) > > at > > > > org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:170) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:260) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:184) > > at > > > > org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:163) > > at > > > > org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:881) > > at > > > > org.springframework.context.support.AbstractApplicationContext.registerBeanPostProcessors(AbstractApplicationContext.java:597) > > at > > > > org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:366) > > at > > > > org.springframework.web.context.ContextLoader.createWebApplicationContext(ContextLoader.java:254) > > at > > > > org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:198) > > at > > > > org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:45) > > at > > > > org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3827) > > at > > > > org.apache.catalina.core.StandardContext.start(StandardContext.java:4334) > > at > > org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) > > at org.apache.catalina.core.StandardHost.start(StandardHost.java:719) > > at > > org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045) > > at > > org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443) > > at > > org.apache.catalina.core.StandardService.start(StandardService.java:516) > > at > > org.apache.catalina.core.StandardServer.start(StandardServer.java:710) > > at org.apache.catalina.startup.Catalina.start(Catalina.java:566) > > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > > at > > > > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > > at > > > > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > > at java.lang.reflect.Method.invoke(Method.java:597) > > at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288) > > at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413) > > > > > > > > On Wed, Apr 2, 2008 at 10:19 PM, Adam Hardy < > > [EMAIL PROTECTED]> wrote: > > > > Yayo on 02/04/08 20:23, wrote: > > > > > > I'm developing a struts - spring based application. > > > > > > > > I've got actions-delegates-managers and daos and I use the open > > > > session > > > > in > > > > view filter from hibernate. > > > > > > > > In some cases I've got to return lazy results to the user so I've > > > > got to > > > > launch a new worker thread and taht new one doesn't have an > > > > hibernate > > > > session attached so I've added hibernateInterceptors to my managers. > > > > > > > > > > > Hi Yayo, > > > that paragraph doesn't sound right. You say 'lazy results' and so I > > > understand you want your hibernate entities to lazy load - is that > > > correct? > > > > > > If that is correct, I don't see the connection with what you say > > > 'launches > > > a new worker thread'. Why do you do that? If you need lazy loading, > > > you make > > > sure the Hibernate session is still running, which you have already > > > because > > > you use the OpenSessionInViewFilter. > > > > > > What is the reason for launching a new thread? The idiomatic > > > spring/hibernate approach doesn't require that. You just pass your > > > hibernate > > > entities around and as long as the session is running, it will be > > > fine. > > > > > > > > > Regards > > > Adam > > > > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- "Sit tibi terra levis" http://yayocaturas.blogspot.com/