2011-12-29 43 views
0

我在Tomcat 7容器中使用JSF2 + CDI。我发现了一个奇怪的问题,我有一个@RequestScoped托管bean,用@Named注释标注,Iam使用它在Facelet页面上的属性。在该页面中安排了三个连续的下拉列表。当页面加载时,我已经使用其getter方法初始化了第一个下拉列表。在同样的方法中,我初始化了第二个和第三个下拉框的属性。但是第二个和第三个属性在页面中变为空。我检查了第二个和第三个属性的getter方法,我发现所有这些属性都是null,甚至第一个getter方法初始化的第一个属性也显示为null。但是,当我将@Named注释更改为@ManagedBean时,我可以正确初始化值。当使用CDI时,Bean属性变为null @ Annotation

回答

2

确保您导入了正确的包。如果您使用CDI @Named,则需要导入javax.enterprise.context.RequestScoped;。但是,如果您使用@ManagedBean,则需要导入javax.faces.bean.RequestScoped;

相关问题