0

我需要在组件绑定后调用支持 bean 中的初始化方法。@PostConstruct 在组件绑定之前调用。对于在组件绑定后导致方法调用的方法,是否有任何 JSF 注释?

目前可以在页面端和bean端使用类似<f:view afterPhase="#{bean.initialize}"><f:event type="preRenderView" listener="#{bean.initialize}" />需要代码的东西。是否有任何仅限 bean-side 的解决方案?

4

1 回答 1

1

在标准的 JSF API 中没有这样的东西。

您可以获得的最接近的是 getter 中的延迟加载。

public UIComponent getSomeComponent() {
    if (!initialized(someComponent)) {
        initialize(someComponent);
    }
    return someComponent;
}

或在 setter 中延迟执行。

public void setSomeComponent(UIComponent someComponent) {
    if (!initialized(someComponent)) {
        initialize(someComponent);
    }
    this.someComponent = someComponent;
}
于 2012-11-01T11:49:19.383 回答