我用Java 6閱讀了關於DI的一些文檔,我不確定完全理解。我有我要注入服務的下列類:DI與Java 6?
@ManagedBean
@RequestScoped
public class MyBean implements Serializable {
private static final long serialVersionUID = 1L;
@Inject
private MyService myService;
private List<SomeObject> someObjects;
// Getter and setter
public List<SomeObject> getSomeObjects() {
if (someObjects == null) {
someObjects = myService.find();
}
return someObjects;
}
}
服務:
public class MyServiceImpl implements MyService {
public MyServiceImpl() {
}
}
運行此代碼,爲myService沒有注入。請問我做錯了什麼?
PS:我使用的是Tomcat 7
我不想使用額外的庫,似乎Tomcat 7支持Java EE 6.我不認爲這是與tomcat的問題,因爲我添加了依賴關係和JSF工作正常... – Pith
Tomcat doesn' t支持Java EE 6,這就是爲什麼我們構建了TomEE,以填補缺少的部分。 DI就是其中之一。看看這個相關的stackoverflow問題http://stackoverflow.com/a/9199893/190816 –