2011-10-06 52 views
0

有沒有辦法來禁用彈簧3.0的註釋處理@InjectSpring 3.0禁用@Inject註釋處理

我想與春天一起使用CDI @Conversation範圍,但是當涉及到

@Inject 
private Conversation conversation; 

春天試圖自動裝配這顯然失敗了談話。

+0

很想知道您在Spring中使用了哪種CDI實現? – rahulmohan

回答

0

我不認爲你可以。但春天有自己的談話支持 - 看看春季網站流量。

+1

我評估過春季網頁流量,但它似乎略微超出了春季社區的範圍。目前的里程碑計劃自一年以來沒有更新。 – flash

+2

這是因爲計劃單獨的對話支持進入spring-mvc – Bozho

2

嘗試混合使用Spring 3.x和CDI註解時遇到了類似的問題。

我發現了一種非Spring bean中禁用春@Inject處理;簡單地創建@Named註解的類的排除過濾器:

@Configuration 
@ComponentScan(excludeFilters = {@Filter(Named.class)}) 
public class SpringConfig 
{ 
} 

或禁用默認篩選器是這樣的:

@Configuration 
@ComponentScan(useDefaultFilters = false, includeFilters = {@Filter(Component.class)}) 
public class SpringConfig 
{ 
} 

這工作,因爲彈簧組默認爲包括過濾器javax.inject.Named激活JSR-330處理。