我知道使用@EJB註釋注入只能在EJB類,servlet或JSF託管bean中注入,但同時我需要注入一些注入的實例在一個POJO類業務接口,所以我想執行以下操作:在POJO中使用EJB注入
在我的JSF託管bean
@EJB BusinessInterfaceLocal businessInterface;
private void someMethod(){
PojoInterface pojo = new PojoClass(this.businessInterface);
}
,並在我的POJO類我有這樣的構造
BusinessInterfaceLocal businessInterface;
public PojoClass(BusinessInterfaceLocal businessInterface){
this.businessInterface = businessInterface;
//The following throws a Null Pointer Exception
this.businessInterface.someMethodCall();
}
不應該該上面工作正常嗎?但它不會,PojoClass上的businessInterface對象被評估爲null,從而拋出一個空指針異常。
我一直希望有人能指出我,我做錯了什麼。
在此先感謝。
爲了讓注射正常工作,你需要用類似@Stateless的方法來聲明類,這樣就可以發生注入。你能提供整個班級以便我們看到嗎? – david99world
問題不在業務接口中,因爲我可以在其他地方使用它,而且它確實使用無狀態註釋進行了註釋,並且它實現的接口使用Local註釋,但是當我嘗試在受管Bean外部使用它時,錯誤會增加在普通類 –
哪裏*精確*是拋出'NullPointerException'?它在你說的路線上,還是在堆棧的更深處? –