UI Layout Initialization Error - Central Panel Element Does Not Exist

I am using a Layout structure that has centerLayout, westLayout, northLayout

When I run the file, I make the following error: "/ UI layout initialization failed. The center panel element does not exist. The center panel is a required element.

my template:

        <p:layoutUnit position="north" size="100" collapsible="true">
            <header>
                <div class="logo1">
                    <img src="#{facesContext.externalContext.requestContextPath}/resources/images/logo1.png" alt="Gestion d'accès et de habilitations" />
                </div>
                <ul>
                    <li><h:link outcome="/profile" value="Profile"/></li>
                    <li><a href="#">Se déconnecté</a></li>
                </ul>
                <div class="logo2">
                    <img src="#{facesContext.externalContext.requestContextPath}/resources/images/logo2.png" alt="Altijari Bank" />
                </div>
            </header>
        </p:layoutUnit>

        <p:layoutUnit position="west" size="210" header="Menus" collapsible="true">
            <h:form id="frmMenu1">
                <p:accordionPanel multiple="true" id="acc" activeIndex="0">
                    <p:tab title="Gestion des agences">
                        <p:menu style="width:100%" id="m1">
                            <p:menuitem value="Consulter" action="#{agenceController.prepareList()}"/>
                            <p:menuitem value="Ajouter" action="#{agenceController.prepareCreate()}" />                                                          
                        </p:menu>
                    </p:tab>
                    <p:tab title="Gestion des utilisateurs">
                        <p:menu style="width:100%"  id="m2">
                            <p:menuitem value="Consulter" action="#{utilisateurController.prepareList()}"/>
                            <p:menuitem value="Ajouter" action="#{utilisateurController.prepareCreate()}" />                                
                        </p:menu>
                    </p:tab>
                    <p:tab title="Gestion des fonctions">
                        <p:menu style="width:100%"  id="m3">
                            <p:menuitem value="Consulter" action="#{fonctionController.prepareList()}"/>
                            <p:menuitem value="Ajouter" action="#{fonctionController.prepareCreate()}" />                             
                        </p:menu>
                    </p:tab> 
                    <p:tab title="Gestion des applications">
                        <p:menu style="width: 100%" id="m4">
                            <p:menuitem value="Consulter" action="#{applicationController.prepareList()}" />
                            <p:menuitem value="Ajouter" action="#{applicationController.prepareCreate()}"/>
                        </p:menu>
                    </p:tab>
                    <p:tab title="Gestion des fiches " >
                        <p:menu style="width: 100%" id="m5">
                            <p:menuitem value="Consulter" action="#{ficheController.prepareList()}"/>
                            <p:menuitem value="Ajouter" action="#{ficheController.prepareCreate()}" />
                        </p:menu>
                    </p:tab> 
                    <p:tab title="Administration" >
                        <p:menu style="width: 100%" id="m6">
                            <p:menuitem value="Consulter" action="#{groupeController.prepareList()}"  />
                            <p:menuitem value="Ajouter" action="#{groupeController.prepareCreate()}" />
                        </p:menu>
                    </p:tab>
                    <p:tab title="Traçabilité" >
                        <p:menu style="width: 100%" id="m7">
                            <p:menuitem value="Consulter" action="#{traceController.prepareList()}" />
                            <p:menuitem value="Ajouter" action="#{traceController.prepareCreate()}" />
                        </p:menu>
                    </p:tab>

                </p:accordionPanel>
            </h:form>

        </p:layoutUnit>

I use simple elements 3.2, jsf 2.1, glassfish 3.1.2.1 Please help me.

+4
source share
3 answers

As indicated in the error message, you are missing the central part of the layout.

This is a required item.

Define similarly to this:

<p:layoutUnit position="center">
 YOUR CONTENT 
</p:layoutUnit>
+4
source

, , , . xhtml, - bean - . , , , -.

+3

5.1 , , bean

<pe:layout id="fullPage" options="#{layoutController.layoutOptions}" stateCookie="true">

,

// options for nested center layout
LayoutOptions childCenterOptions = new LayoutOptions();
center.setChildOptions(childCenterOptions);

// options for center-north pane
LayoutOptions centerNorth = new LayoutOptions();
centerNorth.addOption("size", "50%");
childCenterOptions.setNorthOptions(centerNorth);

, , .

Since this error is not displayed on other lost panels (east, west, ..), this can be a big headache for the solution.

0
source

Source: https://habr.com/ru/post/1540066/


All Articles