public class TOpenSessionInViewFilter extends OpenSessionInViewFilter {
public Jacn_OpenSessionInViewFilter() {
super.setFlushMode(FlushMode.AUTO);
}
protected void commitSession(Session session){
session.getTransaction().commit();
}
protected void closeSession(Session session, SessionFactory sessionFactory) {
session.flush();
try {
commitSession(session);
} catch (HibernateException e) {
// TODO Auto-generated catch block//
e.printStackTrace();
}
super.closeSession(session, sessionFactory);
}
}
如果递归函数里,有个session.beginTransaction(),或者transaction.commit();的话……就会出现 “Transaction not successfully started”异常……解决办法也很简单,把除了session.beginTransaction();和 transaction.commit();以外的语句拿出来,做个方法,递归那个就好了……
描述:
Exception in thread "main" org.hibernate.TransactionException: Transaction not successfully started
分析:
这 个错误的产生是因为我在保存entity后提交事务用的session.getTransaction().commit()语 句,session.getTransaction()只是根据session获得一个Transaction实例,但是并没有启动它,所以它会告诉你 “Transaction启动失败”(Transaction not successfully started)
解决:
应该用 session.beginTransaction()代替 session.getTransaction(),session.beginTransaction()方法在获得一个Transaction后调用 其begin()方法,如果是请求创建一个新的“受控”Transaction,则启动这个Transaction,否则就直接使用已经存在的“受控 ”Transaction来完成工作。
分享到:
相关推荐
Could not roll back Hibernate transaction; nested exception is org.hibernate.TransactionException: JDBC rollback failed 这表明Hibernate事务回滚操作失败,导致事务不能正确回滚。 二、问题原因 该问题的...
之前一直找原因,最后知道了解决方法,具体请下载源码查看。特别是用到throw的事务中
报错信息中,如果出现事务没有对应的结束声明,错误信息可能是:"Vuser started transaction 'transaction_name', but did not reach a corresponding end transaction statement. The transaction ended ...
### HTTP 500 内部服务器错误解决方法 HTTP 500错误是一种常见的Web服务器错误,当服务器遇到无法处理的请求时就会返回此错误。这种错误可能由多种原因引起,包括但不限于服务器配置问题、应用程序错误或者权限设置...
### HTTP 500 内部服务器错误的解决方法 #### 概述 HTTP 500 错误,也称为“内部服务器错误”,是一种常见的Web服务器错误代码,表示服务器遇到无法处理请求的情况,但没有给出具体原因。这种错误可能源于多种因素...
赠送jar包:javax.transaction-api-1.2.jar; 赠送原API文档:javax.transaction-api-1.2-javadoc.jar; 赠送源代码:javax.transaction-api-1.2-sources.jar; 赠送Maven依赖信息文件:javax.transaction-api-1.2....
赠送jar包:javax.transaction-api-1.2.jar; 赠送原API文档:javax.transaction-api-1.2-javadoc.jar; 赠送源代码:javax.transaction-api-1.2-sources.jar; 赠送Maven依赖信息文件:javax.transaction-api-1.2....
### iis错误:500解决方法 在处理Windows XP专业版系统中安装IIS 5.1出现的页面无法正常显示的问题时,通常会遇到一个常见的错误代码——500内部服务器错误。本文将详细介绍如何彻底解决这个问题,并确保网站能够...
在使用maven开发web项目极大地方便了jar包的...oejpw.PlusConfiguration:No Transaction manager found - if your webapp requires one, please configure one. 而且启动过程会暂停十几秒,在反复调试代码时很浪费时间
### iis错误Server Application Error的解决方法 在IT运维领域,遇到IIS(Internet Information Services)中的各种问题是在所难免的。本文将详细介绍一个具体的案例——“Server Application Error”错误的处理...
1. **Transaction**:代表一个事务实体,它包含了事务的开始、提交、回滚以及查询事务状态的方法。 2. **UserTransaction**:这是应用层与事务管理器交互的接口,提供了开始、回滚、提交事务的能力,以及查询当前...
3. `rollback()`:如果发生错误或需要回滚更改,可以调用此方法。它会取消事务中的所有更改,恢复到事务开始前的状态。 在实际开发中,通常我们会将`Session`和`Transaction`的使用结合到一个单元操作中,例如在try...
is not completed by COMMIT),德文原文(COMMIT WORK ist kein Ende bei CALL TRANSACTION USING...),没看明白; * NOBINPT:调用事务码时,系统字段 sy-binpt 的值,有两个值:" "、在被调用事务执行时,系统...
对于这种问题,SAP官方给出的建议通常是查看SAP系统日志,分析错误信息,同时可以参考SAP官方提供的技术支持文档来解决这类问题。如果问题依旧无法解决,可以联系SAP技术支持寻求专业帮助。 在实践中,解决此类问题...
- **解决方法**:根据具体错误信息排查问题,可能需要数据库专家介入。 #### ORA-00021: Unable to allocate shared memory segment - **描述**:无法分配共享内存段。 - **解决方法**:增加内存或调整内存参数。 ...
Transaction Timeout(解决方案).md
本文将针对几个常见的Hibernate错误进行深入分析,并提供相应的解决方法。这些错误包括但不限于 `org.springframework.orm.ObjectRetrievalFailureException`、`org.springframework.beans.factory....
根据提供的文件信息,可以提炼出以下与“Principles of transaction processing”相关的知识点: 1. 事务处理的原理 事务处理系统是计算机系统的一个重要组成部分,它涉及到如何高效、安全地处理各种事务。事务处理...
在Java的持久化框架Hibernate中,`Session`和`Transaction`是两个至关重要的概念,它们在数据管理和事务处理中起到核心作用。这篇文章将深入解析这两个概念及其相关知识点。 `Session`是Hibernate提供的一种与...
《深入理解Hibernate+Transaction在MyEclipse6中的应用实践》 在现代的Java Web开发中,数据持久化是一个至关重要的环节。Hibernate作为一种流行的Object-Relational Mapping(ORM)框架,极大地简化了数据库操作,...