message Unable to instantiate Action, com.qianxunkuaiji.action.VoucherAction, defined for 'addVoucherPage' in namespace '/'Error creating bean with name 'com.qianxunkuaiji.action.VoucherAction': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.qianxunkuaiji.service.VoucherAttachSetsService] found for dependency [com.qianxunkuaiji.service.VoucherAttachSetsService]: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@javax.annotation.Resource(shareable=true, lookup=, name=, description=, authenticationType=CONTAINER, type=class java.lang.Object, mappedName=)}
description The server encountered an internal error that prevented it from fulfilling this request.
exception
Unable to instantiate Action, com.qianxunkuaiji.action.VoucherAction, defined for 'addVoucherPage' in namespace '/'Error creating bean with name 'com.qianxunkuaiji.action.VoucherAction': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.qianxunkuaiji.service.VoucherAttachSetsService] found for dependency [com.qianxunkuaiji.service.VoucherAttachSetsService]: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@javax.annotation.Resource(shareable=true, lookup=, name=, description=, authenticationType=CONTAINER, type=class java.lang.Object, mappedName=)} - action - file:/D:/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/qianxunkuaiji/WEB-INF/classes/struts.xml:101:28 com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:311) com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:392) com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198) org.apache.struts2.factory.StrutsActionProxy.prepare(StrutsActionProxy.java:63) org.apache.struts2.factory.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:37) com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58) org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:546) org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:81) org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:113)
root cause
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'com.qianxunkuaiji.action.VoucherAction': Injection of resource dependencies failed; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.qianxunkuaiji.service.VoucherAttachSetsService] found for dependency [com.qianxunkuaiji.service.VoucherAttachSetsService]: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@javax.annotation.Resource(shareable=true, lookup=, name=, description=, authenticationType=CONTAINER, type=class java.lang.Object, mappedName=)} org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.postProcessPropertyValues(CommonAnnotationBeanPostProcessor.java:321) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1214) org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireBeanProperties(AbstractAutowireCapableBeanFactory.java:385) com.opensymphony.xwork2.spring.SpringObjectFactory.autoWireBean(SpringObjectFactory.java:215) com.opensymphony.xwork2.spring.SpringObjectFactory.buildBean(SpringObjectFactory.java:194) com.opensymphony.xwork2.spring.SpringObjectFactory.buildBean(SpringObjectFactory.java:161) com.opensymphony.xwork2.ObjectFactory.buildBean(ObjectFactory.java:172) com.opensymphony.xwork2.factory.DefaultActionFactory.buildAction(DefaultActionFactory.java:22) com.opensymphony.xwork2.ObjectFactory.buildAction(ObjectFactory.java:137) com.opensymphony.xwork2.DefaultActionInvocation.createAction(DefaultActionInvocation.java:292) com.opensymphony.xwork2.DefaultActionInvocation.init(DefaultActionInvocation.java:392) com.opensymphony.xwork2.DefaultActionProxy.prepare(DefaultActionProxy.java:198) org.apache.struts2.factory.StrutsActionProxy.prepare(StrutsActionProxy.java:63) org.apache.struts2.factory.StrutsActionProxyFactory.createActionProxy(StrutsActionProxyFactory.java:37) com.opensymphony.xwork2.DefaultActionProxyFactory.createActionProxy(DefaultActionProxyFactory.java:58) org.apache.struts2.dispatcher.Dispatcher.serviceAction(Dispatcher.java:546) org.apache.struts2.dispatcher.ExecuteOperations.executeAction(ExecuteOperations.java:81) org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter.doFilter(StrutsPrepareAndExecuteFilter.java:113)
答 :没有在serviceImpl里@Service("VoucherAttachSetsService")