Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java JSF:view beforePhase在我离开页面时多次触发_Java_Jsf - Fatal编程技术网

Java JSF:view beforePhase在我离开页面时多次触发

Java JSF:view beforePhase在我离开页面时多次触发,java,jsf,Java,Jsf,仍然试图解决我在JSF中页面加载程序疯狂启动的问题> 通过此链接: 看起来,如果我放一个按钮,它将在进入页面时触发一次 然而,当离开页面时,它会触发4次,这有点违背了要点。有什么想法吗?只要相位发生变化,它就会“触发”。例如,通过添加一个条件,将event.getPhaseId()与PhaseId.RESTORE\u视图进行比较,可以使阶段侦听器中的代码仅在某些阶段被触发。它会在阶段更改时“激发”。例如,通过添加一个比较event.getPhaseId()与PhaseId.RESTORE\u V

仍然试图解决我在JSF中页面加载程序疯狂启动的问题>

通过此链接:

看起来,如果我放一个按钮,它将在进入页面时触发一次


然而,当离开页面时,它会触发4次,这有点违背了要点。有什么想法吗?

只要相位发生变化,它就会“触发”。例如,通过添加一个条件,将
event.getPhaseId()
PhaseId.RESTORE\u视图
进行比较,可以使阶段侦听器中的代码仅在某些阶段被触发。

它会在阶段更改时“激发”。例如,通过添加一个比较
event.getPhaseId()
PhaseId.RESTORE\u VIEW
的条件,您可以使阶段侦听器中的代码仅在某些阶段被触发。

谢谢,我终于被它绊倒了。这是漫长的一天。更推荐的做法是,让实现的
getPhaseId()
方法返回
PhaseId.RESTORE\u视图
。这样,
beforePhase()
afterPhase()
只会在特定阶段执行。@BalusC-这是我最初的答案,但后来我看到他指的是
哦,我一秒钟也没想到!是的,检查方法中的
PhaseId
确实是一种方法。谢谢,我终于被它绊倒了。这是漫长的一天。更推荐的做法是,让实现的
getPhaseId()
方法返回
PhaseId.RESTORE\u视图
。这样,
beforePhase()
afterPhase()
只会在特定阶段执行。@BalusC-这是我最初的答案,但后来我看到他指的是
哦,我一秒钟也没想到!是的,检查方法中的
PhaseId
,确实是一种方法。