Java 未定义类型为的唯一bean,应为单个bean,但找到0
我所说的例外情况以前肯定有人问过。但在您将此问题标记为重复问题之前,请阅读完整的问题陈述。因为我已经尝试了所有其他解决方案,但不幸的是,它们都没有击中靶心。 我将从完整的堆栈跟踪开始,如下所示:-Java 未定义类型为的唯一bean,应为单个bean,但找到0,java,spring,hibernate,spring-mvc,jpa,Java,Spring,Hibernate,Spring Mvc,Jpa,我所说的例外情况以前肯定有人问过。但在您将此问题标记为重复问题之前,请阅读完整的问题陈述。因为我已经尝试了所有其他解决方案,但不幸的是,它们都没有击中靶心。 我将从完整的堆栈跟踪开始,如下所示:- <?xml version="1.0" encoding="UTF-8"?> <!-- Document : web.xml Created on : 21 January, 2016, 11:17 AM Author : Vaibhav kashyap Descript
<?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>
org.springframework.beans.factory.support。DefaultListableBeanFactory@5686a031
11:27:18529错误[org.springframework.web.servlet.DispatcherServlet]
(MSC服务线程1-6)上下文初始化失败:
org.springframework.beans.factory.BeanCreationException:错误
创建名为“UserSessionDao”的bean:持久性注入
依赖关系失败;嵌套异常是
org.springframework.beans.factory.noSuchBean定义异常:否
[javax.persistence.EntityManagerFactory]类型的唯一bean是
已定义:应为单个bean,但在处找到0
org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.PostProcessPropertyValue(PersistenceAnnotationBeanPostProcessor.java:342)
[spring-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]
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]
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)
[spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE]
org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
[spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE]
org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
[spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE]
org.springframework.beans.factory.support.DefaultListableBeanFactory.PreInstanceSingleton(DefaultListableBeanFactory.java:585)
[spring-beans-3.1.1.RELEASE.jar:3.1.1.RELEASE]
org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913)
[spring-context-3.1.1.RELEASE.jar:3.1.1.RELEASE]
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.1.1.RELEASE]
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]
org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:508)
[spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE]
org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:449)
[spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE]
org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:133)
[spring-webmvc-3.1.1.RELEASE.jar:3.1.1.RELEASE]
javaservlet.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.Final.jar:]
org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1102)
[jbossweb-7.0.13.Final.jar:]
org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:3655)
[jbossweb-7.0.13.Final.jar:]
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]at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
[rt.jar:1.7.067]位于java.lang.Thread.run(Thread.java:745)
[rt.jar:1.7.0_67]由以下原因引起:
org.springframework.beans.factory.noSuchBean定义异常:否
[javax.persistence.EntityManagerFactory]类型的唯一bean是
已定义:应为单个bean,但在处找到0
org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.findDefaultEntityManagerFactory(PersistenceAnnotationBeanPostProcessor.java:537)
[spring-orm-3.1.1.RELEASE.jar:3.1.1.RELEASE]
org.springframework.orm.jpa.support.PersistenceAnnotationBeanPostProcessor.FindentialManagerFactory(PersistenceAnnotationBeanPostProcessor.java:496)
[spring-orm-3.1.1.RELEASE.jar:3.1.1.RELEASE]
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.PersistenceAnnotation
<?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;
@PersistenceContext(unitName = "TalentPactFormEngine_New")
protected EntityManager em;
@PersistenceContext(unitName = "entityManagerFactory")
public EntityManager em;