ERROR [web.servlet.DispatcherServlet] Context initialization failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping#0': Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'taskController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.springframework.scheduling.quartz.SchedulerFactoryBean com.bozone.wdjk.system.task.TaskController.quartzSchedulerFactoryBean; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'quartzSchedulerFactoryBean' defined in ServletContext resource [/WEB-INF/schedule.xml]: Cannot resolve reference to bean 'managerAccountAuditTaskTrigger' while setting bean property 'triggers' with key [7]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'managerAccountAuditTaskTrigger' defined in ServletContext resource [/WEB-INF/schedule.xml]: Cannot resolve reference to bean 'managerAccountAuditTaskJob' while setting bean property 'jobDetail'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'managerAccountAuditTaskJob' defined in ServletContext resource [/WEB-INF/schedule.xml]: Cannot resolve reference to bean 'managerAccountAuditTask' while setting bean property 'targetObject'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'managerAccountAuditTask' is defined
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:580)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:425)
at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:442)
at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:458)
at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:339)
at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:306)
at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:127)
at javax.servlet.GenericServlet.init(GenericServlet.java:212)
at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1161)
at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:981)
at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4045)
at org.apache.catalina.core.StandardContext.start(StandardContext.java:4351)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:791)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:771)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:525)
at org.apache.catalina.startup.HostConfig.deployDirectory(HostConfig.java:920)
at org.apache.catalina.startup.HostConfig.deployDirectories(HostConfig.java:883)
at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:492)
at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1138)
at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:311)
at org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1053)
at org.apache.catalina.core.StandardHost.start(StandardHost.java:719)
at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1045)
at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:443)
at org.apache.catalina.core.StandardService.start(StandardService.java:516)
at org.apache.catalina.core.StandardServer.start(StandardServer.java:710)
at org.apache.catalina.startup.Catalina.start(Catalina.java:566)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:288)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:413)
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'taskController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.springframework.scheduling.quartz.SchedulerFactoryBean com.bozone.wdjk.system.task.TaskController.quartzSchedulerFactoryBean; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'quartzSchedulerFactoryBean' defined in ServletContext resource [/WEB-INF/schedule.xml]: Cannot resolve reference to bean 'managerAccountAuditTaskTrigger' while setting bean property 'triggers' with key [7]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'managerAccountAuditTaskTrigger' defined in ServletContext resource [/WEB-INF/schedule.xml]: Cannot resolve reference to bean 'managerAccountAuditTaskJob' while setting bean property 'jobDetail'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'managerAccountAuditTaskJob' defined in ServletContext resource [/WEB-INF/schedule.xml]: Cannot resolve reference to bean 'managerAccountAuditTask' while setting bean property 'targetObject'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'managerAccountAuditTask' is defined
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:285)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1074)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1075)
at org.springframework.web.servlet.handler.AbstractUrlHandlerMapping.registerHandler(AbstractUrlHandlerMapping.java:383)
at org.springframework.web.servlet.handler.AbstractUrlHandlerMapping.registerHandler(AbstractUrlHandlerMapping.java:362)
at org.springframework.web.servlet.handler.AbstractDetectingUrlHandlerMapping.detectHandlers(AbstractDetectingUrlHandlerMapping.java:82)
at org.springframework.web.servlet.handler.AbstractDetectingUrlHandlerMapping.initApplicationContext(AbstractDetectingUrlHandlerMapping.java:58)
at org.springframework.context.support.ApplicationObjectSupport.initApplicationContext(ApplicationObjectSupport.java:119)
at org.springframework.web.context.support.WebApplicationObjectSupport.initApplicationContext(WebApplicationObjectSupport.java:72)
at org.springframework.context.support.ApplicationObjectSupport.setApplicationContext(ApplicationObjectSupport.java:73)
at org.springframework.context.support.ApplicationContextAwareProcessor.invokeAwareInterfaces(ApplicationContextAwareProcessor.java:106)
at org.springframework.context.support.ApplicationContextAwareProcessor.postProcessBeforeInitialization(ApplicationContextAwareProcessor.java:85)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:394)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1413)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
... 40 more求指点啊,急

解决方案 »

  1.   

    <bean id="agentInOutDetailUploadTaskJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="agentInOutDetailUploadTask" />
    <property name="targetMethod" value="process" />
    <property name="concurrent" value="false"/>
    </bean>
    <bean id="agentManagerUploadTaskJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="agentManagerUploadTask" />
    <property name="targetMethod" value="process" />
    <property name="concurrent" value="false"/>
    </bean>
    <bean id="agentSaleStockUploadTaskJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="agentSaleStockUploadTask" />
    <property name="targetMethod" value="process" />
    <property name="concurrent" value="false"/>
    </bean>
    <bean id="dailyCheckSheetDownloadTaskJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="dailyCheckSheetDownloadTask" />
    <property name="targetMethod" value="process" />
    <property name="concurrent" value="false"/>
    </bean>
    <bean id="storageInfoDownloadTaskJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="storageInfoDownloadTask" />
    <property name="targetMethod" value="process" />
    <property name="concurrent" value="false"/>
    </bean>
    <bean id="ticketStatusDownloadTaskJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="ticketStatusDownloadTask" />
    <property name="targetMethod" value="process" />
    <property name="concurrent" value="false"/>
    </bean>
    <bean id="dailySaleReportUploadTaskJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="dailySaleReportUploadTask" />
    <property name="targetMethod" value="process" />
    <property name="concurrent" value="false"/>
    </bean>
    <bean id="managerAccountAuditTaskJob" class="org.springframework.scheduling.quartz.MethodInvokingJobDetailFactoryBean">
    <property name="targetObject" ref="managerAccountAuditTask" />
    <property name="targetMethod" value="process" />
    <property name="concurrent" value="false"/>
    </bean>
    <!-- 1.秒2.分3.小时4.月份中的日期(1-31)5.月份(1-12或JAN-DEC)6.星期中的日期(1-7或SUN-SAT)7.年份 -->
    <bean id="agentInOutDetailUploadTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail" ref="agentInOutDetailUploadTaskJob" />
    <property name="cronExpression" value="0 1/10 * * * ?" />
    <property name="jobDataMap">
    <map>
    <entry key="taskId" value="1" />
    <entry key="nameChn" value="站点出入库操作记录上传" />
    <entry key="executingTimeChn" value="每十分钟运行一次" />
    </map>
    </property>
    </bean>
    <bean id="agentManagerUploadTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail" ref="agentManagerUploadTaskJob" />
    <!-- run every morning at 6 AM -->
    <property name="cronExpression" value="0 3/30 * * * ?" />
    <property name="jobDataMap">
    <map>
    <entry key="taskId" value="2" />
    <entry key="nameChn" value="站点与管理员信息上传" />
    <entry key="executingTimeChn" value="每半小时运行一次" />
    </map>
    </property>
    </bean>

    <bean id="agentSaleStockUploadTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail" ref="agentSaleStockUploadTaskJob" />
    <property name="cronExpression" value="0 10 0 * * ?" />
    <property name="jobDataMap">
    <map>
    <entry key="taskId" value="3" />
    <entry key="nameChn" value="站点最新销量存货量上传" />
    <entry key="executingTimeChn" value="每天凌晨零点十分运行" />
    </map>
    </property>
    </bean>

    <bean id="dailyCheckSheetDownloadTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail" ref="dailyCheckSheetDownloadTaskJob" />
    <property name="cronExpression" value="0 0 4 * * ?" />
    <property name="jobDataMap">
    <map>
    <entry key="taskId" value="4" />
    <entry key="nameChn" value="每日对帐单下载" />
    <entry key="executingTimeChn" value="每天凌晨四点正运行" />
    </map>
    </property>
    </bean>

    <bean id="storageInfoDownloadTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail" ref="storageInfoDownloadTaskJob" />
    <property name="cronExpression" value="0 5/30 * * * ?" />
    <property name="jobDataMap">
    <map>
    <entry key="taskId" value="5" />
    <entry key="nameChn" value="存货点信息下载" />
    <entry key="executingTimeChn" value="每半小时运行一次" />
    </map>
    </property>
    </bean>
    <bean id="ticketStatusDownloadTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail" ref="ticketStatusDownloadTaskJob" />
    <property name="cronExpression" value="0 7/10 * * * ?" />
    <property name="jobDataMap">
    <map>
    <entry key="taskId" value="6" />
    <entry key="nameChn" value="物流箱本张状态下载" />
    <entry key="executingTimeChn" value="每十分钟运行一次" />
    </map>
    </property>
    </bean>

    <bean id="dailySaleReportUploadTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail" ref="dailySaleReportUploadTaskJob" />
    <property name="cronExpression" value="0 20 0 * * ?" />
    <property name="jobDataMap">
    <map>
    <entry key="taskId" value="7" />
    <entry key="nameChn" value="销售日报表上传" />
    <entry key="executingTimeChn" value="每天凌晨零点二十分运行" />
    </map>
    </property>
    </bean>

    <bean id="managerAccountAuditTaskTrigger" class="org.springframework.scheduling.quartz.CronTriggerBean">
    <property name="jobDetail" ref="managerAccountAuditTaskJob" />
    <property name="cronExpression" value="0 0 12 * * ?" />
    <property name="jobDataMap">
    <map>
    <entry key="taskId" value="7" />
    <entry key="nameChn" value="管理员帐户审计" />
    <entry key="executingTimeChn" value="每天凌晨零点一分运行" />
    </map>
    </property>
    </bean>

    <bean id="quartzSchedulerFactoryBean" class="org.springframework.scheduling.quartz.SchedulerFactoryBean">
    <property name="triggers">
    <list>
    <!-- 注释的 -->
      <ref bean="agentInOutDetailUploadTaskTrigger" />
    <ref bean="agentManagerUploadTaskTrigger" />
    <ref bean="agentSaleStockUploadTaskTrigger" />
    <ref bean="dailyCheckSheetDownloadTaskTrigger" />
    <ref bean="storageInfoDownloadTaskTrigger" />
    <ref bean="ticketStatusDownloadTaskTrigger" />
    <ref bean="dailySaleReportUploadTaskTrigger" />
    <!-- 注释的 -->
    <ref bean="managerAccountAuditTaskTrigger" />
    </list>
    </property>
    </bean></beans>
    这是配置文件
      

  2.   

    Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'taskController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.springframework.scheduling.quartz.SchedulerFactoryBean com.bozone.wdjk.system.task.TaskController.quartzSchedulerFactoryBean; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'quartzSchedulerFactoryBean' defined in ServletContext resource [/WEB-INF/schedule.xml]: Cannot resolve reference to bean 'managerAccountAuditTaskTrigger' while setting bean property 'triggers' with key [7]; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'managerAccountAuditTaskTrigger' defined in ServletContext resource [/WEB-INF/schedule.xml]: Cannot resolve reference to bean 'managerAccountAuditTaskJob' while setting bean property 'jobDetail'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'managerAccountAuditTaskJob' defined in ServletContext resource [/WEB-INF/schedule.xml]: Cannot resolve reference to bean 'managerAccountAuditTask' while setting bean property 'targetObject'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'managerAccountAuditTask' is defined
    这就是问题所在,自动装配失败,不能创建bean等。你是通过什么方式注入的?
      

  3.   

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.mvc.annotation.DefaultAnnotationHandlerMapping#0': Initialization of bean failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'taskController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.springframework.scheduling.quartz.SchedulerFactoryBean com.bozone.wdjk.system.task.TaskController.quartzSchedulerFactoryBean; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'quartzSchedulerFactoryBean' defined in ServletContext resource [/WEB-quartzSchedulerFactoryBean是不是taskController的一个属性?前者的创建失败导致注入失败,继而导致后者初始化失败
    好好检查一下吧
      

  4.   

    quartzSchedulerFactoryBean这个bean不能实例化。检查下注入方式、配置文件。