Динамическое обновление страницы в макете вложенных простых лиц

Я новичок в JSF и PrimeFaces, и у меня есть пара проблем при разработке полного макета страницы с несколькими меню.

ВЫПУСК #1

У нас есть полный макет страницы с использованием PrimeFaces 3.3 с вложенными единицами макета с левой стороны следующим образом:

<p:layoutUnit id="west" position="west" header="Services" resizable="true" closable="true" collapsible="true" effect="drop">
            <p:layout>                                          
                <p:layoutUnit id="inner_center" position="center">                        
                   <h:form id="formMainMenu">
                        <ui:include src="#{menuBean.pageToDisplay}.xhtml" />
                   </h:form>               
                </p:layoutUnit>
                <p:layoutUnit id="inner_south" size="200" position="south">                                       
                    <h:form id="formStartMenu">
                        <p:menu>
                            <p:submenu label="Start Menu">                                    
                                <p:menuitem value="Start" actionListener="#{#menuBean.setPageToDisplay('template/menu/start')}" update=":inner_center" />                                    
                            </p:submenu>
                        </p:menu>
                    </h:form>
                </p:layoutUnit>
            </p:layout>
        </p:layoutUnit>

Вот поддерживающая фасоль:

@ManagedBean(name = "menuBean")
@SessionScoped
public class menuBean implements Serializable {

private String pageToDisplay = "template/menu/main";

public String getPageToDisplay() {
    return this.pageToDisplay;
}

public void setPageToDisplay(String pageToDisplay) {
    this.pageToDisplay = pageToDisplay; 
} }

Когда я нажимаю на элемент меню, весь LayoutUnit (внутренний _центр )исчезает. Я пробовал многочисленные комбинации элементов управления Forms и Panel вместе с Ajax и не могу загрузить вторую страницу и меню. Возможно, мой подход неверен из-за моих ограниченных знаний в JSF. Я надеюсь, что это что-то простое, и я просто скучаю по нему.

Из действия menuItem я хочу загрузить еще один bean-компонент меню PrimeFaces во внутренний блок центрального макета _... может быть, мне не нужно этого делать, а просто вызвать меню через Ajax?

ВЫПУСК #2 С этими вложенными модулями макета при загрузке страницы родительский заголовок «Службы» LayoutUnit полностью исчезает.

<p:layoutUnit id="west" position="west" header="Services" resizable="true" closable="true" collapsible="true" effect="drop">

Любая помощь или совет по общему подходу очень ценятся!!

Спасибо!

8
задан Ryan M. 12 July 2012 в 04:44
поделиться