2013-04-25 56 views
0

我有兩個FactoryBeans爲應用程序上下文中的現有bean創建代理。在配置之前使用Spring FactoryBean?

FactoryBeanA.getObject()作爲單例預實例化的一部分被調用,它嘗試自動裝載返回的實例。

該自動裝配需要一個由FactoryBeanB定義的Bean,該Bean尚未配置(注入了屬性)。

這是否可以這樣控制,我確信在試圖實例化任何bean之前,FactoryBean都已完全配置(注入屬性)?

編輯: 從FactoryBeanA對象的自動裝配工作正常,直到我更改FactoryBeanB要求注入屬性。在此更改之後,我看到A-bean的自動裝配嘗試調用FactoryBeanB.getObject(),但是由於屬性尚未注入,所以這會失敗。

+1

你試過了嗎? Spring應該能夠解決bean創建本身的順序。 – NilsH 2013-04-25 11:38:09

+0

所以要清楚,你已經創建了兩個實現FactoryBean接口的bean。 您需要將值自動裝入A,這是B中getObject方法的結果? 這張圖片的問題是Factory Bean的getObject方法沒有返回一個託管對象,但它看起來就是你正在嘗試做的。 請澄清,如果我沒有得到你想要做的。 – fpmoles 2013-04-26 02:05:39

+0

我不確定這裏的「託管bean」是什麼意思。但之前的自動裝配對於同樣的設置工作得很好。唯一的變化是FactoryBeanB現在需要在注入屬性之前注入它。 – 2013-04-26 18:48:17

回答

0

問題實際上是由我自己的錯誤引起的。 FactoryBeanB沒有按照我的想法正確配置。

相關問題