【发布时间】:2015-03-01 06:32:20
【问题描述】:
我有一个 Web 应用程序,它是 Hibernate 4.3.7 和 Spring Boot 1.2.0.RELEASE。 我不做 JPA。我直接使用 Hibernate SessionFactory、hbm.xmls 等。
出于某种原因,Spring Boot 一直在尝试自动加载 JPA 内容。我为我的 Spring LocalSessionFactory 创建了一个别名,名为“entityManagerFactory”,并关闭了一个错误。现在,它又在这件事上爆发了。如何在 Spring Boot 中完全关闭所有 JPA 自动加载内容?
2015-01-02 16:51:20,147 调试 [org.springframework.beans.factory.support.DefaultListableBeanFactory](主要)创建单例 bean 的共享实例“openEntityManagerInViewInterceptor” 2015-01-02 16:51:20,147 调试 [org.springframework.beans.factory.support.DefaultListableBeanFactory](主要)创建 bean 'openEntityManagerInViewInterceptor' 的实例 2015-01-02 16:51:20,147 调试 [org.springframework.beans.factory.support.DefaultListableBeanFactory](主要)返回单例 bean 'org.springframework.transaction.config.internalTransactionAdvisor' 的缓存实例 2015-01-02 16:51:20,147 调试 [org.springframework.beans.factory.support.DefaultListableBeanFactory](主要)返回单例 bean 'org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration$JpaWebConfiguration' 的缓存实例 2015-01-02 16:51:20,160 调试 [org.springframework.beans.factory.support.DefaultListableBeanFactory] (主要)急切地缓存 bean 'openEntityManagerInViewInterceptor' 以允许解析潜在的循环引用 2015-01-02 16:51:20,160 TRACE [org.springframework.beans.CachedIntrospectionResults](主要)获取类 [org.springframework.orm.jpa.support.OpenEntityManagerInViewInterceptor] 的 BeanInfo 2015-01-02 16:51:20,223 TRACE [org.springframework.beans.CachedIntrospectionResults](主要)缓存类 [org.springframework.orm.jpa.support.OpenEntityManagerInViewInterceptor] 的 PropertyDescriptors 2015-01-02 16:51:20,223 TRACE [org.springframework.beans.CachedIntrospectionResults](主要)找到类型为 [org.springframework.beans.factory.BeanFactory] 的 bean 属性“beanFactory” 2015-01-02 16:51:20,223 TRACE [org.springframework.beans.CachedIntrospectionResults](主要)找到类型 [java.lang.Class] 的 bean 属性“类” 2015-01-02 16:51:20,223 TRACE [org.springframework.beans.CachedIntrospectionResults](主要)找到类型 [javax.persistence.EntityManagerFactory] 的 bean 属性“entityManagerFactory” 2015-01-02 16:51:20,223 TRACE [org.springframework.beans.CachedIntrospectionResults](主要)找到类型为 [java.util.Properties] 的 bean 属性“jpaProperties” 2015-01-02 16:51:20,223 TRACE [org.springframework.beans.CachedIntrospectionResults](主要)找到类型 [java.util.Map] 的 bean 属性“jpaPropertyMap” 2015-01-02 16:51:20,223 TRACE [org.springframework.beans.CachedIntrospectionResults](主要)找到类型 [java.lang.String] 的 bean 属性“persistenceUnitName” 2015-01-02 16:51:20,256 WARN [org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext](主要)上下文初始化期间遇到异常-取消刷新尝试 org.springframework.beans.factory.BeanCreationException:在类路径资源 [org/springframework/web/servlet/config/annotation/DelegatingWebMvcConfiguration.class] 中定义名称为“requestMappingHandlerMapping”的 bean 创建错误:通过工厂方法进行 Bean 实例化失败;嵌套异常是 org.springframework.beans.BeanInstantiationException:无法实例化 [org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping]:工厂方法“requestMappingHandlerMapping”抛出异常;嵌套异常是 org.springframework.beans.factory.BeanCreationException:在类路径资源 [org/springframework/boot/autoconfigure/orm/jpa/JpaBaseConfiguration$JpaWebConfiguration.class] 中定义名称为“openEntityManagerInViewInterceptor”的 bean 创建错误:bean 初始化失败;嵌套异常是 org.springframework.beans.factory.NoSuchBeanDefinitionException:没有定义 [javax.persistence.EntityManagerFactory] 类型的合格 bean 在 org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:602) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1111) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1006) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:504) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476) 在 org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:302) 在 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) 在 org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298) 在 org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193) 在 org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:762) 在 org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757) 在 org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480) 在 org.springframework.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:109) 在 org.springframework.boot.SpringApplication.refresh(SpringApplication.java:691) 在 org.springframework.boot.SpringApplication.run(SpringApplication.java:321) 在 org.springframework.boot.SpringApplication.run(SpringApplication.java:961) 在 springboot.Application.main(Application.java:32) 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源) 在 java.lang.reflect.Method.invoke(未知来源) 在 org.springframework.boot.loader.MainMethodRunner.run(MainMethodRunner.java:53) 在 java.lang.Thread.run(未知来源) 引起:org.springframework.beans.BeanInstantiationException:无法实例化[org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping]:工厂方法'requestMappingHandlerMapping'抛出异常;嵌套异常是 org.springframework.beans.factory.BeanCreationException:在类路径资源 [org/springframework/boot/autoconfigure/orm/jpa/JpaBaseConfiguration$JpaWebConfiguration.class] 中定义名称为“openEntityManagerInViewInterceptor”的 bean 创建错误:bean 初始化失败;嵌套异常是 org.springframework.beans.factory.NoSuchBeanDefinitionException:没有定义 [javax.persistence.EntityManagerFactory] 类型的合格 bean 在 org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:189) 在 org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:591) ... 22 更多 原因:org.springframework.beans.factory.BeanCreationException:在类路径资源 [org/springframework/boot/autoconfigure/orm/jpa/JpaBaseConfiguration$JpaWebConfiguration.class] 中定义名称为“openEntityManagerInViewInterceptor”的 bean 创建错误:bean 初始化失败;嵌套异常是 org.springframework.beans.factory.NoSuchBeanDefinitionException:没有定义 [javax.persistence.EntityManagerFactory] 类型的合格 bean 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:547) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476) 在 org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:302) 在 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) 在 org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:298) 在 org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193) 在 org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:322) 在 org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration$JpaWebConfiguration$$EnhancerBySpringCGLIB$$a50a6fd9.openEntityManagerInViewInterceptor() 在 org.springframework.boot.autoconfigure.orm.jpa.JpaBaseConfiguration$JpaWebConfiguration.addInterceptors(JpaBaseConfiguration.java:168) 在 org.springframework.web.servlet.config.annotation.WebMvcConfigurerComposite.addInterceptors(WebMvcConfigurerComposite.java:112) 在 org.springframework.web.servlet.config.annotation.DelegatingWebMvcConfiguration.addInterceptors(DelegatingWebMvcConfiguration.java:55) 在 org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport.getInterceptors(WebMvcConfigurationSupport.java:259) 在 org.springframework.web.servlet.config.annotation.WebMvcConfigurationSupport.requestMappingHandlerMapping(WebMvcConfigurationSupport.java:228) 在 org.springframework.web.servlet.config.annotation.DelegatingWebMvcConfiguration$$EnhancerBySpringCGLIB$$7c201664.CGLIB$requestMappingHandlerMapping$24() 在 org.springframework.web.servlet.config.annotation.DelegatingWebMvcConfiguration$$EnhancerBySpringCGLIB$$7c201664$$FastClassBySpringCGLIB$$c4e37a95.invoke() 在 org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228) 在 org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:309) 在 org.springframework.web.servlet.config.annotation.DelegatingWebMvcConfiguration$$EnhancerBySpringCGLIB$$7c201664.requestMappingHandlerMapping() 在 sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 在 sun.reflect.NativeMethodAccessorImpl.invoke(未知来源) 在 sun.reflect.DelegatingMethodAccessorImpl.invoke(未知来源) 在 java.lang.reflect.Method.invoke(未知来源) 在 org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162) ... 23 更多 引起:org.springframework.beans.factory.NoSuchBeanDefinitionException:没有定义[javax.persistence.EntityManagerFactory]类型的合格bean 在 org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:371) 在 org.springframework.beans.factory.support.DefaultListableBeanFactory.getBean(DefaultListableBeanFactory.java:331) 在 org.springframework.orm.jpa.EntityManagerFactoryUtils.findEntityManagerFactory(EntityManagerFactoryUtils.java:143) 在 org.springframework.orm.jpa.EntityManagerFactoryAccessor.setBeanFactory(EntityManagerFactoryAccessor.java:137) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeAwareMethods(AbstractAutowireCapableBeanFactory.java:1585) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1553) 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539) ... 45 更多【问题讨论】:
标签: jpa spring-boot