2016-02-01 51 views
1

我说过的异常是以前肯定要问的。但在将此问题标记为重复之前,请阅读完整的问题说明。正如我已经尝试过所有其他解决方案可用于相同的问题,但不幸的是他们都没有击中牛眼。 我会用完整的堆栈跟踪是如下开始: -没有定义类型的唯一bean,预计单个bean,但找到0

org.s[email protected]5686a031 11:27:18529 ERROR [org.springframework.web.servlet .DispatcherServlet] (MSC服务线程1-6)上下文初始化失败: org.springframework.beans.factory.BeanCreationException:错误 创建名为'UserSessionDao'的bean:注入持久性 依赖关系失败;嵌套的异常是 org.springframework.beans.factory.NoSuchBeanDefinitionException:类型的无 独特豆[javax.persistence.EntityManagerFactory]是 定义:预期单个豆但在 org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor发现0 .postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:342) [弹簧ORM-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1106 ) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) [spring-beans-3.1。 1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:294) [spring-beans-3.1.1.RELEASE.jar:3.1 .1.RELEASE]在 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225) [弹簧豆-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 有机.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory .support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java :913) [spring-context-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464) [spring-context-3.1 .1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.web.servlet.FrameworkServlet.configureAndRef reshWebApplicationContext(FrameworkServlet.java:631) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:588) [ spring-webmvc-3.1.1.RELEASE] at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:645) [spring-webmvc-3.1.1.RELEASE。 jar:3.1.1.RELEASE] org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:508) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1。发布] org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:449) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web。 servlet.HttpServletBean.init(HttpServletBean.java:133) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at javax.servlet.GenericServlet.init(GenericServlet.java:242) [ JBoss的-servlet的api_3.0_spec-1.0.0.Final.jar:1.0.0.Final]在 org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1202) [jbossweb-7.0.13。 org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1102) [jbossweb-7.0.13.Final.jar:] org.apache.catalina.core.st andardContext.loadOnStartup(StandardContext.java:3655) [jbossweb-7.0.13.Final.jar:] at org.apache.catalina.core.StandardContext.start(StandardContext.java:3873) [jbossweb-7.0.13 .Final.jar:]在 org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [JBoss的-AS-web的7.1.1.Final.jar:7.1.1.Final]在 org.jboss.msc.service.ServiceControllerImpl $ StartTask.startService(ServiceControllerImpl.java:1811) 在 org.jboss.msc.service.ServiceControllerImpl $ StartTask.run(ServiceControllerImpl.java:1746) 在 的Java。 util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar中:1.7.0_67]在 java.util.concurrent.ThreadPoolExecutor中$ Worker.run(ThreadPoolExecutor.java:615) [rt.jar中:1.7.0_67]在java.lang.Thread.run(Thread.java:745) [rt.jar中:由于: org.springframework.beans.factory.NoSuchBeanDefinitionException:No [javax.persistence.EntityManagerFactory]类型的唯一bean是 定义:期望的单一bean,但在 找到0 org.springframework.orm.jpa .support.PersistenceAnnotationBeanPostProcessor.findDefaultEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:537) [弹簧ORM-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findEntityManagerFactory(PersistenceAnnotationBeanPostProcessor .java:496) [sp ring-orm-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor $ PersistenceElement.resolveEntityManager(PersistenceAnnotationBeanPostProcessor.java:657) [spring-orm-3.1。 1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor $ PersistenceElement.getResourceToInject(PersistenceAnnotationBeanPostProcessor.java:630) [弹簧ORM-3.1.1.RELEASE.jar: 3.1.1.RELEASE]在 org.springframework.beans.factory.annotation.InjectionMetadata $ InjectedElement.inject(InjectionMetadata.java:150) [弹簧豆-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87) [弹簧豆-3- .1.1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:339) [弹簧ORM-3.1.1.RELEASE.jar:3.1 .1.RELEASE] ... 27更

11:27:18563 ERROR [org.apache.catalina.core.ContainerBase [jboss.web] [缺省主机] [/ AltSurvey]] (MSC服务线程1-6)StandardWrapper.Throwable: org.springframework.beans.factory.BeanCreationException:错误 创建名为'UserSessionDao'的bean:注入持久性 依赖关系失败;嵌套的异常是 org.springframework.beans.factory。NoSuchBeanDefinitionException:式[javax.persistence.EntityManagerFactory]的无 独特豆是 定义:预期单个豆但在 org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:342) [弹簧发现0 -orm-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1106) [spring-beans-3.1.1.RELEASE .jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE ]在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory。 support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:294) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry .java:225) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291) [spring -beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBea (DefaultListableBeanFactory.java:585) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at [ spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913) [spring-context-3.1.1.RELEASE。 jar:3.1.1.RELEASE] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464) [spring-context-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:631) [ spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:588) [spring-webmvc-3.1.1.RELEASE。 jar:3.1.1.RELEASE] at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:645) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:508) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web.servlet.FrameworkServlet。 initServletBean(FrameworkServlet.java:449) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web.servlet.HttpServletBean.init(Htt pServletBean.java:133) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at javax.servlet.GenericServlet.init(GenericServlet.java:242) [jboss-servlet-api_3。 0_spec-1.0.0.Final.jar:1.0.0.Final] at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1202) [jbossweb-7.0.13.Final.jar:] at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1102) [jbossweb-7.0.13.Final.jar:] at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java: 3655) [jbossweb-7.0.13.Final.jar:] at org.apache.catalina.core.StandardContext.start(StandardContext.java:3873) [jbossweb-7.0.13.Final。罐子:]在 org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:90) [JBoss的-AS-web的7.1.1.Final.jar:7.1.1.Final]在 有机.jboss.msc.service.ServiceControllerImpl $ StartTask.startService在 org.jboss.msc.service.ServiceControllerImpl $ StartTask.run(ServiceControllerImpl.java:1746) (ServiceControllerImpl.java:1811) 在 的java.util.concurrent .ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_67] at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_67 ]在java.lang.Thread.run(Thread.java:745) [rt.jar中:1.7.0_67]产生的原因: org.sp ringframework.beans.factory.NoSuchBeanDefinitionException:类型的无 独特豆[javax.persistence.EntityManagerFactory]是 定义:预期单个豆但在 org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findDefaultEntityManagerFactory发现0(PersistenceAnnotationBeanPostProcessor.java :537) [spring-orm-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:496) [spring-orm -3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor $ PersistenceElement.resolveEntityManager(PersistenceAnnotationBeanPostProcessor.java:657) [spring -orm-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor $ PersistenceElement.getResourceToInject(PersistenceAnnotationBeanPostProcessor.java:630) [spring-orm-3.1.1 .RELEASE.jar:3.1.1.RELEASE]在 org.springframework.beans.factory.annotation.InjectionMetadata $ InjectedElement.inject(InjectionMetadata.java:150) [弹簧豆-3.1.1.RELEASE.jar:3.1 .1.RELEASE]在 org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87) [弹簧豆-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 有机.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:339) [弹簧ORM-3.1.1.RELEASE.jar:3 .1.1.RELEASE] ... 27更

11:27:18615 ERROR [org.apache.catalina.core.ContainerBase [jboss.web] [缺省主机] [/ AltSurvey]] (MSC服务线程1-6)Servlet/AltSurvey抛出load()异常: org.springframework.beans.factory.NoSuchBeanDefinitionException:否 [javax.persistence.EntityManagerFactory]类型的唯一bean是 定义:期望的单一bean但找到0在 org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findDefaultEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:537) [弹簧ORM-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.orm .jpa.support.Persistenc eAnnotationBeanPostProcessor.findEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:496) [弹簧ORM-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor $ PersistenceElement.resolveEntityManager(PersistenceAnnotationBeanPostProcessor。 (PersistenceAnnotationBeanPostProcessor.java:630) [弹簧ORM-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.beans.factory.annotation.InjectionMetadata $ InjectedElement.inject(InjectionMetadata.java:150) [弹簧豆-3.1。 1.RELEASE.jar:3.1.1.RELEASE] at org。springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.orm.jpa.support。 PersistenceAnnotationBeanPostProcessor.postProcessPropertyValues(PersistenceAnnotationBeanPostProcessor.java:339) [弹簧ORM-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java: 1106) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517) [spring-beans- 3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factor y.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject (AbstractBeanFactory.java:294) [spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225) spring-beans-3.1.1 [spring-beans-3.1.1.RELEASE.jar: .RELEASE.jar:3.1.1.RELEASE] at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193) [弹簧豆-3.1.1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585) [弹簧豆-3.1。 1.RELEASE.jar:3.1.1.RELEASE]在 org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913) [弹簧上下文3.1.1.RELEASE.jar:3.1.1。 ORG.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464) [spring-context-3.1.1.RELEASE.jar:3.1.1.RELEASE] org.springframework.web。 servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:631) [spring-webmvc-3.1.1.RELEASE.jar:3 org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:588) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] org.springframework .web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:645) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet .java:508) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:449) [spring-webmvc -3.1.1.RELEASE.jar:3.1.1.RELEASE] at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:133) [spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE] at javax.servlet.GenericServlet.init(GenericServlet.java:242) [jboss-servlet-api_3.0_spec-1.0.0。 org.apache.catalina org.apache.catalina(StandardWrapper.java:1202) [jbossweb-7.0.13.Final.jar:] at org.apache.catalina org.apache.catalina(StandardWrapper.java:1202) [jbossweb-7.0.13.Final.jar] org.apache.catalina .core.StandardWrapper.load(StandardWrapper.java:1102) [jbossweb-7.0.13.Final.jar:] at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3655) [jbossweb- org.apache.catalina.core.StandardContext.start(StandardContext.java:3873) [jbossweb-7.0.13.Final.jar:] org.jboss.as。网页。deployment.WebDeploymentService.start(WebDeploymentService.java:90) [JBoss的-AS-web的7.1.1.Final.jar:7.1.1.Final]在 org.jboss.msc.service.ServiceControllerImpl $ StartTask.startService( ServiceControllerImpl.java:1811) 在 org.jboss.msc.service.ServiceControllerImpl $ StartTask.run(ServiceControllerImpl.java:1746) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [ rt.jar:1.7.0_67] at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_67] at java.lang.Thread.run(Thread.java :745) [rt.jar:1.7.0_67]

11:27:18,769信息[org.jboss.web](MSC服务线程1-6) JBAS018210:注册web上下文:/ AltSurvey 11:27:18,803信息 [org.jboss.as](MSC服务线程1 -6)JBAS015951:管理控制台 收听http://127.0.0.1:9990 11:27:18,803信息[org.jboss.as] (MSC服务线程1-6)JBAS015874:JBoss AS 7.1.1.Final“Brontes” 开始于59812ms - 开始的565个服务466(81个服务是 被动或按需)11:27:19077 INFO [org.jboss.as.server] (DeploymentScanner线程 - 2)JBAS018559:已部署 “AltSurvey.war”

请注意,即使我收到异常e部署,但仍在部署可部署。

现在根据我甚至配置实体管理器的解决方案之一。请找到我的hibernateJpaConfig.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:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx" 
    xmlns:p="http://www.springframework.org/schema/p" 
    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/tx 
       http://www.springframework.org/schema/tx/spring-tx-3.0.xsd 
       http://www.springframework.org/schema/aop 
       http://www.springframework.org/schema/aop/spring-aop-3.0.xsd" 
    default-autowire="byName"> 

    <bean id="surveyDataSource" class="org.apache.commons.dbcp.BasicDataSource" 
     scope="singleton" destroy-method="close"> 
     <property name="driverClass" value="${driver}" /> 
     <property name="jdbcUrl" value="${url}" /> 
     <property name="user" value="${user}" /> 
     <property name="password" value="${password}" /> 
     <property name="initialPoolSize" value="10" /> 
     <property name="minPoolSize" value="5" /> 
     <property name="maxPoolSize" value="20" /> 
     <property name="maxIdleTime" value="5" /> 
     <property name="autoCommitOnClose" value="false" /> 
    </bean> 

    <bean id="entityManagerFactory" depends-on="surveyDataSource" 
     class="org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"> 
     <property name="dataSource" ref="surveyDataSource" /> 
     <property name="persistenceXmlLocation" value="classpath:persistence.xml" /> 
     <property name="jpaVendorAdapter"> 
      <bean class="org.springframework.orm.jpa.vendor.HibernateJpaVendorAdapter" /> 
     </property> 
    </bean> 
    <bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager"> 
     <property name="entityManagerFactory" ref="entityManagerFactory" /> 
    </bean> 
    <tx:annotation-driven transaction-manager="transactionManager" /> 
</beans> 

但是这并没有奏效。之后再按照我试着用下面添加代码片段的解决方案之一: -

春OpenEntityManagerInViewFilter org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter

在我的web.xml

。我的Web.xml如下: -

<?xml version="1.0" encoding="UTF-8"?> 

<!-- Document : web.xml Created on : 21 January, 2016, 11:17 AM Author : 
    Vaibhav kashyap Description: This file will contain the main servlet mappings 
    and all the app configuration entry points. --> 
<web-app xmlns="http://java.sun.com/xml/ns/javaee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" 
    version="3.0" metadata-complete="true"> 
    <context-param> 
     <description>Spring configuration file</description> 
     <param-name>contextConfigLocation</param-name> 
     <param-value>classpath:ApplicationContext.xml</param-value> 
    </context-param> 

    <persistence-unit-ref> 
     <description> 
      Persistence unit description. 
     </description> 
     <persistence-unit-ref-name>persistence/TalentPactFormEngine_New</persistence-unit-ref-name> 
     <persistence-unit-name>TalentPactFormEngine_New</persistence-unit-name> 
    </persistence-unit-ref> 

    <listener> 
     <description>Spring Loader</description> 
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 
    </listener> 
    <listener> 
     <listener-class>org.springframework.security.web.session.HttpSessionEventPublisher</listener-class> 
    </listener> 
    <filter> 
     <filter-name>Spring OpenEntityManagerInViewFilter</filter-name> 
     <filter-class>org.springframework.orm.jpa.support.OpenEntityManagerInViewFilter</filter-class> 
    </filter> 

    <servlet> 
     <servlet-name>rest</servlet-name> 
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 
     <load-on-startup>1</load-on-startup> 
    </servlet> 
    <!-- <filter> <filter-name>filterChainProxy</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> 
     </filter> <filter-mapping> <filter-name>filterChainProxy</filter-name> <url-pattern>*</url-pattern> 
     <dispatcher>FORWARD</dispatcher> <dispatcher>REQUEST</dispatcher> </filter-mapping> --> 
    <servlet-mapping> 
     <servlet-name>rest</servlet-name> 
     <url-pattern>/</url-pattern> 
    </servlet-mapping> 

    <servlet-mapping> 
     <servlet-name>default</servlet-name> 
     <url-pattern>*.js</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>default</servlet-name> 
     <url-pattern>*.css</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>default</servlet-name> 
     <url-pattern>*.gif</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>default</servlet-name> 
     <url-pattern>*.png</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>default</servlet-name> 
     <url-pattern>/images/*</url-pattern> 
    </servlet-mapping> 
    <servlet-mapping> 
     <servlet-name>default</servlet-name> 
     <url-pattern>/fonts/*</url-pattern> 
    </servlet-mapping> 

    <mime-mapping> 
     <extension>json</extension> 
     <mime-type>application/json</mime-type> 
    </mime-mapping> 
    <session-config> 
     <tracking-mode>COOKIE</tracking-mode> 
    </session-config> 
</web-app> 

但是这也没有解决。下一个解决方案,我试图用

方面:注解配置

通过我的应用程序上下文启用这个是如下: -

<?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:context="http://www.springframework.org/schema/context" 
    xmlns:p="http://www.springframework.org/schema/p" xmlns:sec="http://www.springframework.org/schema/security" 
    xmlns:aop="http://www.springframework.org/schema/aop" 
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd 
       http://www.springframework.org/schema/context 
       http://www.springframework.org/schema/context/spring-context-2.5.xsd 
       http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security.xsd 
       http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd" 
    default-lazy-init="true"> 


    <context:annotation-config /> 
    <context:component-scan 
     base-package="com.alt.survey.common.db.dao,com.alt.survey.common.db.service,com.alt.survey.common.db.dao,com.alt.survey.common.db.dao.impl,com.alt.survey.common.db.domain,com.alt.survey.common.db.service,com.alt.survey.common.db.service.impl" /> 

    <!-- Aspect for auto logging --> 
    <aop:aspectj-autoproxy /> 
    <bean id="surveyAudit" class="com.alt.survey.common.SurveyLogging" /> 
    <!-- Database configuration --> 
    <bean id="propertyConfigurer" 
     class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer"> 
     <property name="location"> 
      <value>file:C:\\Users\\vaibhav.kashyap\\Documents\\surveydbdetails\\db.properties</value> 
     </property> 
    </bean> 
    <!-- log4j configuration -->  
    <bean id="log4jInitialization" 
     class="org.springframework.beans.factory.config.MethodInvokingFactoryBean"> 
     <property name="targetClass" value="org.springframework.util.Log4jConfigurer" /> 
     <property name="targetMethod" value="initLogging" /> 
     <property name="arguments"> 
      <list> 
       <value>C:\\Users\\vaibhav.kashyap\\Documents\\surveydbdetails\\log4j.properties</value> 
       <value>30000</value> 
      </list> 
     </property> 
    </bean> 
</beans> 

使用这种配置,通过代码我的实体管理器其也如下: -

@PersistenceContext(unitName = "TalentPactFormEngine_New") 
    protected EntityManager em; 

whi ch也失败了。现在尝试了其他解决方案后,我发现我无处可寻,因此虚心求助。任何类型的解决方案(新)都将非常可观。

+0

又是怎样的'hibernateJpaConfig.xml'装?魔法?没有这个文件的引用,因为它不会被加载。 –

+0

尝试第一种解决方案,但不使用default-autowire =“byName”。 – hasnae

+0

@ M.Deinum非常感谢您的帮助。您提出的观点阻碍了我部署战争。但是我仍然与Dao中的实体管理者争斗,他们的属性在运行时会变为null,因此会抛出空指针异常。 – codechefvaibhavkashyap

回答

0

尝试更换此:

@PersistenceContext(unitName = "TalentPactFormEngine_New") 
    protected EntityManager em; 

有了:

 @PersistenceContext(unitName = "entityManagerFactory") 
    public EntityManager em; 
+0

只需简单地删除'unitName'即可。只有一个。 –

+0

@ M.Deinum好吧,但具体可能会在将来添加em – Abdelhak

相关问题