文档章节

Could not obtain transaction-synchronized Session

五大三粗
 五大三粗
发布于 2015/11/06 09:48
字数 193
阅读 1263
收藏 0

查了一下相关资料,整理如下:

原因:Hibernate4 No Session found for current thread原因

解决方法:


1.  在spring 配置文件中加入

程序代码 程序代码

<tx:annotation-driven transaction-manager="transactionManager"/>

并且在处理业务逻辑的类上采用注解
程序代码 程序代码

@Service
public class CustomerServiceImpl implements CustomerService {  
    @Transactional
    public void saveCustomer(Customer customer) {
        customerDaoImpl.saveCustomer(customer);
    }
    ...
}


另外在 hibernate 的配置文件中,也可以增加这样的配置来避免这个错误:
程序代码 程序代码

<property name="current_session_context_class">thread</property>




解决方法二:http://zhidao.baidu.com/link?url=BNyi8By29DMOXBCiNLeTa7WTTxlf4Q4IbQkrYO6lv6MFNMxv5zkBIx723t4JkezOaNcxc9ARhDIeXxtRZbID_0jYKonThVemDs1VkBUFmpK

我也出现了这个问题,但是我在web.xml中增加了filter就可以了。也许你的问题不是这个,但我的这个问题是这么解决的。
    <filter>
	   <filter-name>SpringOpenSessionInViewFilter</filter-name>
	   <filter-class>org.springframework.orm.hibernate4.support.OpenSessionInViewFilter</filter-class>
	 </filter>
  <filter-mapping>
    <filter-name>SpringOpenSessionInViewFilter</filter-name>
    <url-pattern>/*</url-pattern>
  </filter-mapping>

© 著作权归作者所有

五大三粗
粉丝 163
博文 2293
码字总数 4767276
作品 0
广州
程序员
私信 提问
加载中

评论(1)

peer44
peer44
我也遇到过这个问题,我的是在Controller中的扫描路径错了,如果在Controller中也扫描了Service,这个时候的Service是没有事务特性的,所以会报错。
解决方案就是不要在Controller中扫描事务相关的Service。

参考
http://blog.csdn.net/frankcheng5143/article/details/51308344

看能不能解决你的问题
hibernate4不支持getCurrentSession()吗

其他都配置正常,但是运行报 org.hibernate.HibernateException: Could not obtain transaction-synchronized Session for current thread 按照网上说的,能加的都加了。还是没用。 有人说,...

plugin
2015/02/03
7.2K
11
Spring+Shiro做权限配置时用注解配置的问题

Spring 零配置 主要是用了 在shiro认证用户时就会报错 上面代码在User user = userService.getUser(username); 会报错,提示:Could not obtain transaction-synchronized Session for curren......

土豆不会飞
2015/09/14
3.8K
4
Could not obtain transaction-synchronized Session for current thread

Exception in thread "taskExecutor-1" org.hibernate.HibernateException: Could not obtain transaction-synchronized Session for current thread at org.springframework.orm.hibernate4......

稀薄空气
2015/01/15
4.3K
2
谁能跟我讲一下spring的声明式事务会对hibernate做哪些操作

上面是声明式事物的配置 发现注释这段 hibernateTemplete.save会报错。 (Write operations are not allowed in read-only mode (FlushMode.MANUAL): Turn your Session into FlushMode.COMMI......

银河缘木
2015/07/14
697
5
蓝萝卜blu Hibernate4中使用getCurrentSession报Could not o

架个spring4+hibernate4的demo,dao层直接注入的sessionFactory,然后用getCurrentSession方法获取session,然后问题来了,直接报错: Could not obtain transaction-synchronized Session for c......

JungleKing
2016/03/18
60
0

没有更多内容

加载失败,请刷新页面

加载更多

02.日志系统:一条SQL更新语句是如何执行的?

我们还是从一个表的一条更新语句说起,我们创建下面一张表: create table T(ID int primary key, c int); 如果要将ID=2这一行c的值加1,SQL可以这么写: update T set c=c+1 where ID=2; 前...

scgaopan
今天
7
0
【五分钟系列】掌握vscode调试技巧

调试前端js 准备一个前端项目 index.html <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1......

aoping
今天
6
0
PhotoShop 高级应用:USM锐化/S锐化/防抖

、 高反差锐化+混合模式:叠加模式 【将更多的边缘细节添加到图像中】

东方墨天
今天
7
0
Python数据可视化之matplotlib

常用模块导入 import numpy as npimport matplotlibimport matplotlib.mlab as mlabimport matplotlib.pyplot as pltimport matplotlib.font_manager as fmfrom mpl_toolkits.mplot3d i......

松鼠大帝
昨天
5
0
我用Bash编写了一个扫雷游戏

我在编程教学方面不是专家,但当我想更好掌握某一样东西时,会试着找出让自己乐在其中的方法。比方说,当我想在 shell 编程方面更进一步时,我决定用 Bash 编写一个扫雷游戏来加以练习。 我在...

老孟的Linux私房菜
昨天
11
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部