是否可以使用JSF 1.2动态加载Phase Listener?

时间:2011-12-02 19:09:23

标签: jsf jsf-1.2 faces-config phaselistener

我一直在使用Phase Listener来调试我的JSF应用程序。

现在我想知道是否可以动态加载它,例如,系统属性是否已设置(因此我可以提交该东西,而不必担心在生产中部署之前必须将其删除)。 有谁知道在faces-config.xml中是否有办法做到这一点?

提前致谢!

1 个答案:

答案 0 :(得分:2)

您可以通过UIViewRoot#addPhaseListener()动态添加phaselisteners。

PhaseListener phaseListener = new YourPhaseListener();
FacesContext.getCurrentInstance().getViewRoot().addPhaseListener(phaseListener);

你只需要在每个视图的基础上进行。保持阶段监听器注册并让它仅在设置了所需的系统属性时才采取操作可能更好。