2009-11-26 47 views

回答

8

我不知道你的意思是“在所有的getter方法之前”。在构建所有托管属性(在faces-config.xml中定义的bean属性)的bean 的构建之后,至少调用@PostConstruct

因此大致为:

  1. 豆构造。
  2. 设置了托管属性。
  3. @PostConstruct被调用。
  4. Bean是在JSF生命周期中引入的。

您的问题很可能是该值被别的东西覆盖了。只需运行调试器或由专家审查您的代码。

6

JSF 1.2 spec特别说:

后执行上宣布将在请求,会话或应用程序 范围的,具有@PostConstruct注解管理豆

方法,必须由JSF实现调用 资源注入(如果有的话),但在bean被放入范围之前。

(更多详情在规格中)