在JavaServer中注入bean



我有两个Session作用域bean。

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并调用someemethod(),并获得NullPointerException。为什么我不能使用初始化SessionScoped Bean?

谢谢。

确保在你的META-INF或WEB-INF文件夹中有一个beans.xml文件。

http://docs.oracle.com/javaee/6/tutorial/doc/gjbnz.html

相关内容

  • 没有找到相关文章

最新更新