我有jsf session scoped bean。第一次加载页面时会调用带有注释@PostConstruct的init方法,但不会在每次重新加载或刷新时调用。我想在每个页面刷新时调用一些方法。我需要使用xhtml文件中的注释或更改
答案 0 :(得分:1)
尝试更改注释标记,如下所示
只需将其更改为ViewScope即可。 import javax.annotation.PostConstruct;
import javax.annotation.PostConstruct;
import javax.faces.view.ViewScoped;
import javax.inject.Named;
@Named
@ViewScoped
public class YourControllerClass implements Serializable {
@PostConstruct
public void init(){
}
}
答案 1 :(得分:1)
如果你想在每个页面上调用一个方法刷新,最好使用 ComponentSystemEvent 。
您可以参考以下链接 https://www.tutorialspoint.com/jsf/jsf_applicationevents_tag.htm