当我的托管bean中的特定方法被调用时,我想知道我是否处于JSF生命周期的恢复视图阶段.我怎样才能做到这一点?
Bal*_*usC 14
如果您已经使用JSF 2.0,那么您可以使用FacesContext#getCurrentPhaseId()
以下方法进行检查:
if (FacesContext.getCurrentInstance().getCurrentPhaseId() == PhaseId.RESTORE_VIEW) {
// Restore view called.
}
Run Code Online (Sandbox Code Playgroud)
但是如果你还在JSF 1.x上,那么你最好的选择是使用一个PhaseListener
监听PhaseId.RESTORE_VIEW
,在请求范围内设置一个标志/切换/标记并在其中beforePhase()
删除它afterPhase()
.让bean的getter方法检查它在请求范围中的存在.
那就是说,你到底需要什么呢?我从来没有需要这样的功能要求.是不是bean的构造函数或带@PostConstruct
注释的方法可能是更好的地方做这样的初始化的东西?
归档时间: |
|
查看次数: |
7029 次 |
最近记录: |