Метод @PostConstruct вызывается дважды для одного и того же запроса

Я использую JSF 2.0 с GlassFish 3.0.

У меня есть следующий управляемый компонент:

@ManagedBean
@RequestScoped
public class OverviewController{

    private List<Event> eventList;

    @PostConstruct
    public void init(){
        System.out.println("=> OverviewController - init() - enter");

        System.out.println("=< OverviewController - init() - exit");
    }
}

Из файла overview.xhtml я вызываю различные атрибуты или методы из моего OverviewController.

<ui:repeat var="event" value="#{overviewController.eventList}">
    ...
</ui:repeat>

Все работает нормально, но проблема в файле журнала:

INFO: Enter : RESTORE_VIEW 1
INFO: Exit : RESTORE_VIEW 1

INFO: Enter : RENDER_RESPONSE 6
INFO: => OverviewController - init() - enter
INFO: => Overview Controller - updateSelectedTab() - enter
INFO: =< Overview Controller - updateSelectedTab() - exit
INFO: =< OverviewController - init() - exit
INFO: => OverviewController - init() - enter
INFO: => Overview Controller - updateSelectedTab() - enter
INFO: =< Overview Controller - updateSelectedTab() - exit
INFO: =< OverviewController - init() - exit
INFO: Exit : RENDER_RESPONSE 6

Как видите, метод init () вызывается дважды в одном запросе без всякой причины. Насколько мне известно, любой метод, помеченный PostConstruct , вызывается один раз при каждом запросе. Я ошибаюсь?

РЕДАКТИРОВАТЬ: На странице не используется AJAX. Количество запросов я проверил с помощью firebug. Сделано дерево запросов:

  • 1. Один для javax.faces.resource (GET)
  • 2. Один для файла css (GET)
  • 3. Один для обзора. xhtml (GET)
17
задан BalusC 31 January 2012 в 12:10
поделиться