Java 在部署spring项目时,我遇到依赖项注入错误
pom.xmlJava 在部署spring项目时,我遇到依赖项注入错误,java,spring,Java,Spring,pom.xml Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'commonUtilController': Inj
Exception sending context initialized event to listener instance of class org.springframework.web.context.ContextLoaderListener
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'commonUtilController': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.ems.service.common.CommonUtilService com.ems.controller.common.CommonUtilController.commonUtilService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.ems.service.common.CommonUtilService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:334)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1210)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:755)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480)
at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:403)
at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:306)
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4797)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5291)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.ems.service.common.CommonUtilService com.ems.controller.common.CommonUtilController.commonUtilService; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.ems.service.common.CommonUtilService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:561)
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:88)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:331)
... 22 more
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.ems.service.common.CommonUtilService] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:1301)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1047)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:942)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:533)
... 24 more
CommonUtilServiceImpl
/**
*
*/
package com.ems.service.common;
import com.ems.dto.common.StatesDto;
/**
* @author Shivaling Gondhali
*
*/
public interface CommonUtilService {
public StatesDto getState();
}
声明
package com.ems.service.impl.common;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import com.ems.dto.common.StatesDto;
import com.ems.service.common.CommonUtilService;
import com.ems.service.helper.common.CommonUtilServiceHelper;
/**
* @author Shivaling Gondhali
*
*/
public class CommonUtilServiceImpl implements CommonUtilService {
Logger logger = Logger.getLogger(CommonUtilServiceImpl.class);
@Autowired
private CommonUtilServiceHelper commonUtilServiceHelper;
/**
* @return LocationsDto
*/
public StatesDto getState() {
logger.info("Entered into getState");
StatesDto statesDto = commonUtilServiceHelper.getState();
logger.info("Exited from getState");
return statesDto;
}
}
/**
*
*/
包com.ems.dto.common;
导入java.util.ArrayList;
导入java.util.List;
/**
*@author-ADMIN
*
*/
@抑制警告(“原始类型”)
公共类StatesDto扩展BaseDto{
私人名单国家;
公共列表getStates(){
返回状态;
}
公共无效集合状态(列表状态){
this.states=状态;
}
/**
*将stateDto对象添加到stateDtoList对象。
*
*@param stateDto
*@返回无效
*/
public void addStates(StateDto StateDto){
if(this.states==null){
this.states=new ArrayList();
}
this.states.add(stateDto);
}
}
为类添加注释@Service
CommonUtilServiceImpl
/**
*
*/
package com.ems.dto.common;
import java.util.ArrayList;
import java.util.List;
/**
* @author ADMIN
*
*/
@SuppressWarnings("rawtypes")
public class StatesDto extends BaseDto {
private List<StateDto> states;
public List<StateDto> getStates() {
return states;
}
public void setStates(List<StateDto> states) {
this.states = states;
}
/**
* Add stateDto objects to stateDtoList objects.
*
* @param stateDto
* @return void
*/
public void addStates(StateDto stateDto) {
if (this.states == null) {
this.states = new ArrayList<StateDto>();
}
this.states.add(stateDto);
}
}
Spring不是用来寻找公共服务依赖性的。请在CommonUtilServiceImpl上添加@Service注释
@Service
public class CommonUtilServiceImpl implements CommonUtilService {
你的问题是什么?你的密码在哪里?现在还不清楚你在问什么。你展示了pom文件。但是异常来自Java[Spring]:NoSuchMethodError。
NoSuchBeanDefinitionException
,自动布线出错!如何解决这个问题
/**
*
*/
package com.ems.service.common;
import com.ems.dto.common.StatesDto;
/**
* @author Shivaling Gondhali
*
*/
public interface CommonUtilService {
public StatesDto getState();
}
package com.ems.service.impl.common;
import org.apache.log4j.Logger;
import org.springframework.beans.factory.annotation.Autowired;
import com.ems.dto.common.StatesDto;
import com.ems.service.common.CommonUtilService;
import com.ems.service.helper.common.CommonUtilServiceHelper;
/**
* @author Shivaling Gondhali
*
*/
public class CommonUtilServiceImpl implements CommonUtilService {
Logger logger = Logger.getLogger(CommonUtilServiceImpl.class);
@Autowired
private CommonUtilServiceHelper commonUtilServiceHelper;
/**
* @return LocationsDto
*/
public StatesDto getState() {
logger.info("Entered into getState");
StatesDto statesDto = commonUtilServiceHelper.getState();
logger.info("Exited from getState");
return statesDto;
}
}
/**
*
*/
package com.ems.dto.common;
import java.util.ArrayList;
import java.util.List;
/**
* @author ADMIN
*
*/
@SuppressWarnings("rawtypes")
public class StatesDto extends BaseDto {
private List<StateDto> states;
public List<StateDto> getStates() {
return states;
}
public void setStates(List<StateDto> states) {
this.states = states;
}
/**
* Add stateDto objects to stateDtoList objects.
*
* @param stateDto
* @return void
*/
public void addStates(StateDto stateDto) {
if (this.states == null) {
this.states = new ArrayList<StateDto>();
}
this.states.add(stateDto);
}
}
@Service
public class CommonUtilServiceImpl implements CommonUtilService {
@Service
public class CommonUtilServiceImpl implements CommonUtilService