изменить макет содержимого в шаблоне Facelets, добавив параметр URL - PullRequest
0 голосов
/ 14 октября 2019

У меня есть следующий файл шаблона templateBase.xhtml:

<!--Normal SPA Layout-->
<c:if test="#{not MainActionBean.isLayoutTheme(param.theme)}">
<ui:insert name="pageHeader" />
<ui:insert name="content"/>
<ui:insert name="contentFooter"/>
</c:if> 

<!--3 panel layout-->
<c:if test="#{MainActionBean.isLayoutTheme(param.theme)}">
        <p:outputPanel id="templateBaseLayoutPanel" >
            <p:layout widgetVar="panelLayout">
                <p:layoutUnit position="west" id="westContentContainer">
                        <h:outputText value="Document List"  />
                        <ui:include src="/common/Documents.xhtml" />
                        <br/>
                        <h:outputText value="Action formulary"  />
                        <ui:insert name="actionSection"/>
                </p:layoutUnit>

                <p:layoutUnit position="center" id="centerContentContainer">
                            <ui:insert name="pageHeader" />
                            <ui:insert name="content"/>
                            <ui:insert name="contentFooter"/>
                </p:layoutUnit>

                <p:layoutUnit position="east" id="eastContentContainer">
East Panel Content
                </p:layoutUnit>
            </p:layout>
        </p:outputPanel>
    </c:if>

Чего я хочу добиться, так это изменить текущую схему SPA на 3 с другими столбцами, когда к параметру с определенным значением добавляетсяURL. В макете SPA «список документов» и «формуляр действия» включены в подпредставление в разделе «содержимое» шаблона, а в макете 3 панели они должны быть перемещены на западную панель. В настоящее время после добавления параметра отображаются элементы макета, но не пользовательские элементы ui: insert и ui: include западной панели. В журналах и на консоли нет ошибок, и воспроизведение компонентов контролируется методом «MainActionBean.isLayoutTheme (param.theme)», чтобы предотвратить дублирование идентификатора.

Я хотел бы знать, возможно ли то, что я пытаюсь сделать, или есть лучший подход для этого.

PS: я попытался обобщить и упростить структуру xhtml. как можно больше, при необходимости выложу все это.

...