出现 org.springframework.beans.factory.BeanCreationException 异常的原因及解决方法

1 异常描述

在从 SVN 检出项目并配置完成后,启动 Tomcat 服务器,报出如下错误:

1

2 异常原因

通过观察上图中被标记出来的异常信息,咱们可以知道

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'XXX'

此异常,为:注入bean失败异常

说白了,出现这个异常,就是找不到对应的bean啦!能够导致bean注入失败的原因包括以下几种但不限于这几种:

  • 对应的bean没有添加注解;
  • 对应的bean添加注解错误,例如将 Spring 的@Service错选成 dubbo 的;
  • 选择错误的自动注入方法等。

3 解决方法

既然知道了出现此异常的原因,那咱们就回过头来,去看看对应的Bean声明,观察后发现注入Facade的代码为:

@Autowired
ErrorCodeFacade errorCodeFacade;

好吧,错误也就出在了这里,一般来说,在注入service层和biz层接口的时候,可以用@Autowired,例如:

@Autowired
ErrorCodeService errorCodeService;

但是,在注入Facade层接口的时候,应该用RemoteServiceFactory.getService,例如:

ErrorCodeFacade errorCodeFacade = RemoteServiceFactory.getService(ErrorCodeFacade.class);

也就是说,对于这个异常,采用上述代码声明ErrorCodeFacade后,即可解决。

你可能感兴趣的:(java语言学习)