整理java.lang.IllegalStateException: BeanFactory not initialized or already closed - call 'refresh' before accessing beans via the ApplicationContext的出現問題以及各種解決方案


解決方案:

(1)

BeanFactory沒有實例化或者已經關閉了,其實產生錯誤的原因很簡單,在寫:

ApplicationContext ctx = new ClassPathXmlApplicationContext();

時,沒有指定配置文件,Spring實例化BeanFactory的時候是默認到classPath下面查找名為applicationContext.xml的文件的,但是呢,你又沒有指定,所以出現了這個錯誤。

這就是錯誤的原因,在括號寫上配置文件名就行了。

ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml");

這樣的話就不會出現這樣的錯誤了。

 

(2)

原因:spring初始化bean對象出錯;1)xml的bean的id 有重復;

                                              2)如果是注解配置:可能是注解的名稱有重復:

只需要將重復的bean 的id和重復的注解改了就行了;

 

(3)查看@Controller或者@service注入的接口是否有一樣的或者注入的接口是引入別的文件的而導致報錯(本人項目出錯原因)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM