0
我有兩個Session Scoped bean。在JavaServer中注入bean beans
import javax.inject.Named;
import javax.enterprise.context.SessionScoped;
import java.io.Serializable;
@Named
@SessionScoped
public class PollsBean implements Serializable {
private long id;
private String title;
......
get...
set...
}
import javax.enterprise.context.SessionScoped;
import javax.inject.Inject;
import javax.inject.Named;
import java.io.Serializable;
@Named
@SessionScoped
public class ChartBean implements Serializable {
@Inject private PollsBean currentPoll;
...
public void someMethod(){
Long curid = currentPoll.getId();
}
}
因此,當我打開使用PollsBean的頁面時,所有工作正常,所有bean字段都被初始化。之後,我轉到使用ChartBean並調用someMethod()的第二頁,並獲取NullPointerException。爲什麼我不能使用初始化的SessionScoped Bean?
謝謝。
我只空build.xml文件web_war_exploded \ WEB-INF \ classes文件夾 – user2783755
好,必須有WEB-INF文件夾下(可以爲空),一個在beans.xml中的情況下,一個Web應用程序。否則CDI將不會掃描注入點的類路徑。 – Csaba