在使用SpringDAO利用OpenJPA进行事务操作时出现错误代码(不使用事务的时候无错):
org.apache.openjpa.persistence.TransactionRequiredException: Can only perform operation while a transaction is active.
非常奇怪的一个错误提示,Google找到的类似问题都与我碰到的没有关系。
首先我有一个项目已经正常使用SpringMVC+OpenJPA,以此项目为基础新建了一个Ext-GWT的项目,修改了部分代码。
非常神奇的碰到了上面的问题,百思不得其解。顺着Spring代码往下找也一头雾水。
无奈之下,对两个项目进行逐步匹配修改…………居然问题是因为…………想死的心都有了。看代码如下:
applicationContextMVC.xml (SpringMVC的配置文件)
<?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:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context"
xmlns:mvc="http://www.springframework.org/schema/mvc"
xsi:schemaLocation="
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd
http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd">
<!-- =====就是下面这句======== -->
<context:component-scan base-package="com.strong.server" />
<bean class="org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping" />
<mvc:interceptors>
<bean class="org.springframework.web.servlet.i18n.LocaleChangeInterceptor" />
<!-- 解决延迟加载 -->
<bean class="org.springframework.orm.jpa.support.OpenEntityManagerInViewInterceptor">
<property name="entityManagerFactory">
<ref bean="entityManagerFactory" />
</property>
</bean>
</mvc:interceptors>
<!-- 启动Spring MVC的注解功能,完成请求和注解POJO -->
<bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="5000000000" />
<property name="maxInMemorySize" value="4096" />
</bean>
<bean id="localeResolver" class="org.springframework.web.servlet.i18n.CookieLocaleResolver" />
</beans>
居然错在这里
<context:component-scan base-package="com.strong.server" />
我的Controller位置是:
package com.strong.server.module.controller;
用这个扫描包的时候就会出现最开始的错误,必须修改为:
<context:component-scan base-package="com.strong.server.module.**.controller" />
非常神奇的错误,但最主要的还是对SpringMVC理解的不够,貌似这方面的资料相对Struts来说实在太少。
顺便再推荐一下SpringMVC,它没有Struts那样的过度封装,可以在Controller直接调用原生的Request
可是实现程序最大程度的解耦合,强烈推荐之………………
分享到:
相关推荐
在IT领域,构建高效、可扩展的Web应用是至关重要的,而"spring+springMVC+jpa+hibernate框架整合"就是一个常见的解决方案。这个整合涉及到四个关键的技术栈:Spring框架、SpringMVC、JPA(Java Persistence API)...
在本项目中,我们主要探讨如何手动构建一个基于SpringMVC、Spring Data JPA、Hibernate以及FreeMarker模板引擎的Maven工程,同时实现环境切换功能。这个基础框架为日常开发工作提供了必要的支持。 首先,SpringMVC...
工作用了springmvc+jpa+spring这么长时间,这段时间正好有点时间就想整合一下,但在整合过程中遇到了各种问题,上网查了很多资料但讲的都很模糊或者是没有注释,在我一步一步的试验中终于整合成功了,做为我自已以后...
"spring3+springmvc+jpa+hibernate多数据源"是一个示例项目,它演示了如何在一个应用中集成Spring 3、Spring MVC、JPA 2.0以及Hibernate,以实现对多个数据源的支持。下面将详细介绍这些技术及其集成的关键点。 **...
在现代Java Web开发中,"Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA"是一个常见的架构组合,被广泛应用于构建企业级应用程序。这个组合通常被称为"SSM",其中"M"代表Maven,"S"代表Spring,包括Spring核心...
Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码,SSM+Vue的学生管理系统。 Java基于Spring+SpringMVC+MyBatis实现的学生信息管理系统源码,SSM+Vue的学生管理系统。 Java基于Spring+SpringMVC+...
在“spring+springmvc+jpa零配置注解开发”项目中,我们将深入探讨如何利用注解驱动的配置,避免XML配置,实现更简洁、高效的开发流程。 首先,让我们关注“零配置”这个概念。在传统的Spring应用中,开发者需要在...
完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统(RESTful API+redis).zip 完善的Spring+SpringMVC+Mybatis+easyUI后台管理系统...
在IT行业中,构建一个基于Spring、SpringMVC、Hibernate和JPA的开发环境是常见的任务,这四个组件都是Java企业级应用开发中的重要工具。让我们深入探讨这些技术以及如何将它们整合在一起搭建一个完整的开发环境。 *...
在IT行业中,构建高效、可维护的Web应用是至关重要的,而"Maven+SpringMVC+SpringJPA+Hibernate"的组合就是一个常见的解决方案。这个组合提供了全面的开发工具和技术,帮助开发者快速构建基于Java的Web应用程序。...
综上所述,"Springmvc+JPA(Hibernate4)+redis+activemq"的组合为开发者提供了一套强大、全面的工具集,可用于构建高度可扩展、高性能的现代Web应用。通过熟练掌握这些技术,开发者能够构建出更加健壮和灵活的应用...
【标题】:“Spring+SpringMVC+JPA+JSP 练习demo项目源码”是一个结合了四个关键Java技术的实践项目,旨在帮助开发者掌握它们的集成与应用。 【描述】:该项目的核心是通过Spring框架(包括Spring Core和Spring MVC...
基于Spring+SpringMVC+Mybatis架构的博客系统:博客管理、图表数据、日志分析、访问记录、图库管理、资源管理、友链通知等。良好的页面预加载,无限滚动加载,文章置顶,博主推荐等。提供 用户端+管理端 的整套系统...
"SpringMVC+Spring Data JPA+Shiro+EasyUI 简单demo"是一个整合了上述四个技术的Web应用示例。这个项目可能包含了以下组件: 1. **配置文件**:如`applicationContext.xml`用于配置SpringMVC和Spring Data JPA,...
总结来说,"springmvc+springjpa+hibernate整合简例"涉及到的主要知识点包括: 1. SpringMVC的请求处理流程和配置。 2. SpringJPA的使用,包括实体和数据访问接口的定义。 3. Hibernate作为JPA提供者的配置和特性...
本文将深入探讨如何将SpringMVC、Apache Shiro以及JPA(以Hibernate为实现)进行整合,以便在实际项目中实现高效且安全的用户认证与授权功能。 首先,我们来看`SpringMVC`,它是Spring框架的一部分,专门用于处理...
基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis+Maven项目案例 基于SpringMVC+Spring+MyBatis...
Spring MVC 和 JPA 是两种广泛应用于Java开发的技术。Spring MVC 是 Spring 框架的一部分,主要负责处理Web应用中的请求和响应,而JPA(Java Persistence API)是Java平台上的对象关系映射标准,用于管理和持久化...
标题 "spring+springmvc+spring data jpa+mysql" 涉及到的是一个基于Java的Web开发技术栈,主要用于构建高效、灵活的企业级应用程序。这个技术组合包括四个主要组件: 1. **Spring框架**:这是一个全面的企业级应用...
SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+Mybatis集成开发环境SpringMVC+Spring+...