<f: viewParam> не устанавливает значение для bean-компонента

Я хочу реализовать простой подход PRG, который по некоторым причинам не работает, как я ожидал. Пожалуйста помоги.

1) я делаю ПОСТ из firstpage.xhtml

                <p:column>
                    <p:menuButton value="#{i18n['actions']}">
                        <p:menuitem value="#{i18n['edit-course']}" icon="ui-icon-pencil" ajax="false" 
                            action="#{courseDesignerBackingBean.navigateToEditCourse(course.courseId)}" />
                        <p:menuitem value="#{i18n['delete-course']}" icon="ui-icon-trash" ajax="false"/>
                    </p:menuButton>
                </p:column>                 

2) Здесь я обрабатываю действие и делаю редирект.

public String navigateToEditCourse(long courseId){
  String outcome = "editCourse?faces-redirect=true" + "&amp;courseId=" + courseId;
  System.out.println(outcome);
  return outcome;
}

3) На странице editCourse.xhtml я читаю параметры запроса.

<f:metadata>
  <f:viewParam name="courseId" value="#{courseModelBean.courseId}"/>
  <f:event listener="#{courseDesignerBackingBean.updateModelBeanByCourseId}" type="preRenderView"/>
</f:metadata>

Я ожидал, что на третьем шаге будет вызван первый setCourseId() courseModelBean, за которым следует courseDesignerBackingBean.updateModelBeanByCourseId. Но setCourseId(), конечно, ModelBean не вызывается.

Есть намеки?

С наилучшими пожеланиями, Ананд.

0 ответов

Другие вопросы по тегам