1. 程式人生 > >出現 org.springframework.beans.factory.BeanCreationException 異常的原因及解決方法

出現 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 後,即可解決。

溫馨提示:導致此異常的原因有很多,以上僅列出本人遇到的問題及解決方法,希望對大家有所幫助!