Это невозможно с <f:event>
. Вам необходимо вручную проверить FacesContext#isPostback()
внутри метода слушателя.
public void init() {
if (!FacesContext.getCurrentInstance().isPostback()) {
// ...
}
}
В следующем теге JSF 2.2 <f:viewAction>
, который должен заменить этот * обходной путь <f:event type="preRenderView">
, это будет возможно с атрибутом onPostback
:
<f:viewAction action="#{defaultNewQuestionHandler.init}" onPostback="false" />
Выпуски моментальных снимков JSF 2.2 уже доступны .
Смотри также: