[英]Passivation of CDI SessionBean with Constructor Injection
我有以下CDI Bean:
@SessionScoped
public class ReportService implements Serializable {
private static final long serialVersionUID = 1L;
private MyDao myDao;
@Inject
public ReportService(MyDao myDao) {
this.myDao = myDao;
}
}
@RequestScoped
public class MyDao extends AbstractDao<Order> {
protected MyDao() {
}
@Inject
public MyDao(EntityManager em) {
super(em);
}
}
如果我啟動Web應用程序(帶有Weld的Tomcat),則會引發以下異常:
WELD-001435:普通范圍內的Bean類com.myorg.ReportService無法代理,因為它沒有no-args構造函數-帶有限定符[@Any @Default]的托管Bean [類com.myorg.ReportService]。
如何在SessionScoped Bean中使用構造函數注入? 僅添加包可見的無參數構造函數是否安全?
我已經進行了很多搜索,但沒有找到有關使用構造函數注入鈍化CDI Bean的任何信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.