我需要在组件绑定后调用支持 bean 中的初始化方法。@PostConstruct 在组件绑定之前调用。对于在组件绑定后导致方法调用的方法,是否有任何 JSF 注释?
目前可以在页面端和bean端使用类似<f:view afterPhase="#{bean.initialize}">
或<f:event type="preRenderView" listener="#{bean.initialize}" />
需要代码的东西。是否有任何仅限 bean-side 的解决方案?
我需要在组件绑定后调用支持 bean 中的初始化方法。@PostConstruct 在组件绑定之前调用。对于在组件绑定后导致方法调用的方法,是否有任何 JSF 注释?
目前可以在页面端和bean端使用类似<f:view afterPhase="#{bean.initialize}">
或<f:event type="preRenderView" listener="#{bean.initialize}" />
需要代码的东西。是否有任何仅限 bean-side 的解决方案?
在标准的 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;
}