精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2007-12-08
javax.servlet.ServletException: org.hibernate.HibernateException: createQuery is not valid without active transaction org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:515) org.apache.struts2.dispatcher.FilterDispatcher.doFilter(FilterDispatcher.java:419) 我的配置如下: hibernate.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"> <property name="configLocation" value="classpath:hibernate.cfg.xml" /> </bean> </beans> tx.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.springframework.org/schema/tx" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd"> <bean id="transactionManager" class="org.springframework.orm.hibernate3.HibernateTransactionManager"> <property name="sessionFactory" ref="sessionFactory"/> </bean> <tx:advice id="transactionAdvice" transaction-manager="transactionManager"> <tx:attributes> <tx:method name="load*" read-only="true"/> <tx:method name="get*" read-only="true"/> <tx:method name="list*" read-only="true"/> <tx:method name="*" read-only="false"/> </tx:attributes> </tx:advice> <aop:config> <aop:advisor pointcut="execution(* com.sanlea.shoponline.service.*.*(..))" advice-ref="transactionAdvice"/> </aop:config> </beans> business.xml <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd"> <!-- DAO --> <bean id="administratorDao" class="com.sanlea.shoponline.dao.impl.AdministratorDaoImpl"> <property name="sessionFactory" ref="sessionFactory" /> </bean> <!-- Logic --> <bean id="administratorLogic" class="com.sanlea.shoponline.logic.impl.AdministratorLogicImpl"> <property name="administratorDao" ref="administratorDao" /> </bean> <!-- Service --> <bean id="administratorService" class="com.sanlea.shoponline.service.impl.AdministratorServiceImpl"> <property name="administratorDao" ref="administratorDao" /> <property name="administratorLogic" ref="administratorLogic" /> </bean> </beans> 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2007-12-10
spring2.5对spring2.0是平滑迁移的 一般情况下是不用大动代码!看你的报错应该是事务拦截出错
|
|
返回顶楼 | |
发表时间:2007-12-10
确实有不兼容的地方...transaction, annotation都有问题!
|
|
返回顶楼 | |
发表时间:2007-12-11
spring2.5 内置了annotation的包 不象以前还要加个包
|
|
返回顶楼 | |
发表时间:2007-12-11
antonyup_2006 写道 spring2.5对spring2.0是平滑迁移的 一般情况下是不用大动代码!看你的报错应该是事务拦截出错
不对,Service类是一些包含业务接口的类,我是拦截它的实例方法,应该没错才对。 在Spring2.0上是可以哦。 |
|
返回顶楼 | |
发表时间:2007-12-12
看看是不是hibernate版本问题
spring2.5需要3.2以上的hibernate版本
|
|
返回顶楼 | |
发表时间:2007-12-13
Hibernate的版本是3.2.5GA
还是没有解决,真奇怪,没有人遇到这样的问题吗? |
|
返回顶楼 | |
发表时间:2008-02-27
LZ你的方法里面用到:sessionFactory.getCurrentSession();了么?
|
|
返回顶楼 | |
发表时间:2008-02-27
无用信息,请忽略
|
|
返回顶楼 | |
发表时间:2008-02-28
marsoon 写道 LZ你的方法里面用到:sessionFactory.getCurrentSession();了么?
用了Spring当然使用getHibernateTemplate().xxx了。。不会用到什么sessionFactory吧。 |
|
返回顶楼 | |