Можно ли динамически загружать Phase Listener с JSF 1.2? - PullRequest
1 голос
/ 02 декабря 2011

Я использовал Phase Listener для отладки моего приложения JSF.

Теперь мне интересно, возможно ли загрузить его динамически в зависимости, например, от того, установлено ли системное свойство или нет (поэтому яможет совершить вещь, и не беспокоиться о необходимости удалить ее перед развертыванием в производстве)Кто-нибудь знает, есть ли способ сделать это в faces-config.xml?

Заранее спасибо!

1 Ответ

2 голосов
/ 02 декабря 2011

Вы можете добавлять фазелистенизеры динамически с помощью UIViewRoot#addPhaseListener().

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

Вы должны делать это только для каждого просмотра. Возможно, лучше сохранить фазовый прослушиватель зарегистрированным и позволить ему выполнять действия только тогда, когда задано желаемое системное свойство или нет.

...