Hello all, i try to do a simple web application with the classic layout Wicket->Spring->Hibernate
When i try to make a simple request i receive the following error. WicketMessage: Error attaching this container for rendering: [Page class = ch.myexample.ListContacts, id = 0, version = 0] Root cause: org.hibernate.HibernateException: createCriteria is not valid without active transaction In IMHO all file conf seams to be correct correct... bat i don't undestand hibenate dosen't find the correct session. At UI level i load the data with LoadableDetachableModel IModel contactsModel = new LoadableDetachableModel() { protected Object load() { return WicketApplication.get().getContactService().findAllContacts(); } }; --applicationContext from here -- <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"> <property name="driverClassName"> <value>${jdbc.driver}</value> </property> <property name="url"> <value>${jdbc.url}</value> </property> <property name="username"> <value>${jdbc.username}</value> </property> <property name="password"> <value>${jdbc.password}</value> </property> </bean> <!-- hibernate session factory --> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"> <property name="dataSource" ref="dataSource" /> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">${hibernate.dialect}</prop> <prop key="hibernate.connection.pool_size">5</prop> <prop key="hibernate.current_session_context_class">thread</prop> <prop key="hibernate.show_sql">true</prop> <prop key="hibernate.cglib.use_reflection_optimizer">true</prop> <prop key="hibernate.cache.provider_class">org.hibernate.cache.EhCacheProvider</prop> <prop key="hibernate.hibernate.cache.use_query_cache">true</prop> </props> </property> <property name="annotatedClasses"> <list> <value> ch.myexample.domain.Contact </value> </list> </property> </bean> <!-- setup transaction manager --> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory"> <ref bean="sessionFactory" /> </property> </bean> <tx:annotation-driven /> <bean id="ContactDao" class="ch.myexample.dao.impl.ContactDaoImpl"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <bean id="LocalServiceService" class="ch.myexample.services.LocalServiceImpl"> <property name="contactDao" ref="ContactDao" /> </bean> <bean id="wicketApplication" class="ch.myexample.WicketApplication"> </bean> </beans> -- --applicationContext to here -- and web.xml <context-param> <param-name>contextConfigLocation</param-name> <param-value> classpath:applicationContext.xml</param-value> </context-param> <filter> <filter-name>wicket.WebProject</filter-name> <filter-class>org.apache.wicket.protocol.http.WicketFilter </filter-class> <init-param> <param-name>applicationFactoryClassName </param-name> <param-value> org.apache.wicket.spring.SpringWebApplicationFactory </param-value> </init-param> <init-param> <param-name>applicationBean</param-name> <param-value> wicketApplication</param-value> </init-param> </filter> <filter> <filter-name>opensessioninview</filter-name> <filter-class> org.springframework.orm.hibernate3.support.OpenSessionInViewFilter </filter-class> </filter> <filter-mapping> <filter-name>opensessioninview</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <filter-mapping> <filter-name>wicket.WebProject</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> <listener> <listener-class>org.springframework.web.context.ContextLoaderListener </listener-class> </listener> </web-app> Could you tell me where is my mistake please Cheers --Richard