SpringMVC Hibernate no session found for current thread
配置了app-context.xml
中hibernate的各种设置,仍然报错,
关键配置:要配置txmanager, aop等,因为这是完整配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <property name="dataSource"> <ref local="tomcatDataSource" /> </property> <property name="mappingLocations" value="classpath:/hibernate/**/*.hbm.xml" /> <property name="hibernateProperties"> <props> <prop key="hibernate.dialect">${hibernate.dialect}</prop> <prop key="hibernate.show_sql">${hibernate.show_sql}</prop> <prop key="hibernate.format_sql">true</prop> <prop key="hibernate.jdbc.fetch_size">50</prop> <prop key="hibernate.jdbc.batch_size">25</prop> <!-- <prop key="hibernate.cache.region.factory_class">org.hibernate.cache.ehcache.SingletonEhCacheRegionFactory</prop> --> <prop key="current_session_context_class">org.springframework.orm.hibernate4.SpringSessionContext</prop> </props> </property> </bean> <bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager" p:defaultTimeout="900"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <bean name="cache" class="com.upyoo.common.cache.impl.LocalCacheImpl"> </bean> <bean name="mqServer" class="com.upyoo.common.mq.MQServer"> </bean> <bean name="topicProducer" class="com.upyoo.common.mq.TopicProducer"> </bean> <tx:annotation-driven transaction-manager="transactionManager" /> <context:component-scan base-package="com.upyoo.operation.dao" /> <context:component-scan base-package="com.upyoo.operation.service" /> <context:component-scan base-package="com.upyoo.common.mq" /> <tx:advice id="txAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="save*" propagation="REQUIRED"/> <tx:method name="add*" propagation="REQUIRED"/> <tx:method name="create*" propagation="REQUIRED"/> <tx:method name="insert*" propagation="REQUIRED"/> <tx:method name="*" read-only="true" /> </tx:attributes> </tx:advice> <aop:config proxy-target-class="true"> <aop:advisor advice-ref="txAdvice" pointcut="execution(* com.upyoo.operation..*DAO.*(..))" /> </aop:config> |
配置
<property name=”current_se[……]