申请请求后的RequestScope-Bean init

时间:2012-06-04 10:34:35

标签: spring jsf lifecycle

我有一个Requestscoped Bean,它在@postconstruct mehod中读取会话范围bean的状态。但它是在请求应用于会话范围bean之前创建的,因此数据是一个请求。我怎样才能在以后初始化请求范围的bean?

1 个答案:

答案 0 :(得分:1)

利用<f:event type="preRenderView">。把它放在视图的顶部(确切的位置实际上是无关紧要的,但在视图的顶部是大多数自我记录):

<f:event type="preRenderView" listener="#{bean.init}" />

该方法可以如下所示,不要忘记删除@PostConstruct

public void init() {
    // ...
}