他のページへのリダイレクトには NavigationHandler#navigationHandler を使っていますが、起動した瞬間に init() メソッド (@PostConstruct) を呼び出します。なんで?
public void onRowSelect(SelectEvent event) throws IOException {
long time = System.currentTimeMillis();
System.out.println("JSF : QuestionnaireListBean : onRowSelect(SelectEvent event)");
FacesContext context = FacesContext.getCurrentInstance();
context.getExternalContext().getApplicationMap().put("questionnaireId", selectedQuestionnaire.getQuestionnaireId());
NavigationHandler navigationHandler = context.getApplication().getNavigationHandler();
navigationHandler.handleNavigation(context, null, "/views/questionnaires/viewDetails.xhtml?faces-redirect=true&includeViewParams=true&questionnaireId=" + selectedQuestionnaire.getQuestionnaireId());
System.out.println("JSF : QuestionnaireListBean : onRowSelect(SelectEvent event) time = " + (System.currentTimeMillis() - time) + "ms");
}