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