Я вызываю функцию в компоненте поддержки, но перед рендерингом страницы jsf мне нужно выполнить некоторые операции, которые зависят от страницы jsf, которая будет отображаться (эта страница изменяется от одного вызова к другому).
Мне нужно перехватить имя URL-адреса перед страницей рендеринга, потому что мне нужно выполнить операции и сохранить результат в сеансе.
Поэтому я хочу использовать PhaseListener для получения URL-адреса, а не имянавигационного кейса.
Например: функция ' execute ' возвращает ' ivIndex ', но мне нужно получить ' / zone / iv / index.xhtml '.
Как я могу это сделать?
метод:
public String execute(){
return nameUrl(); // return name of a navigation rule, per example : ivIndex
face-config.xml
<navigation-rule>
<from-view-id>*</from-view-id>
<navigation-case>
<from-outcome>ivIndex</from-outcome>
<to-view-id>/zone/iv/index.xhtml</to-view-id>
</navigation-case>