Я использую компонент masterDetail для отображения некоторых вещей. Сначала у меня был весь компонент masterDetail-Component, вложенный в -Tag. После того, как я заметил, что мне придется использовать формы в компоненте masterDetail, я удалил теги формы, чтобы избежать вложенных форм, которые не разрешены.pe: masterDetail - MenuItem должен быть внутри элемента формы (?)
<ui:define name="center">
<p:growl id="infoMessage" sticky="false" />
<p:layoutUnit position="center" style="border-width: 0px">
<p:panel id="panel">
<pe:masterDetail showBreadcrumb="true" selectLevelListener="#{logic.selectLevel}">
<f:facet name="header">
<p:messages showDetail="false" showSummary="true" />
</f:facet>
<pe:masterDetailLevel level="1"
levelLabel="#{ivy.cms.co('/Labels/Mitarbeiterauswahl')}">
<h:panelGrid columns="3" cellpadding="5">
<p:outputLabel for="name" value="#{ivy.cms.co('/Labels/Mitarbeiter')}" />
<p:inputText id="name" value="#{data.nameSuche}" />
<p:commandButton value="#{ivy.cms.co('/Labels/Buttons/Suchen')}"
actionListener="#{logic.RD_Suchen}" update="mitarbeitersuche" />
</h:panelGrid>
<p:dataTable value="#{data.mitarbeiter.rsMitarbeiter}" var="mitarbeiter"
id="mitarbeitersuche">
<p:column headerText="#{ivy.cms.co('/Labels/Nachname')}">
<h:outputText value="#{mitarbeiter['nachnamemita']}" />
</p:column>
<p:column headerText="#{ivy.cms.co('/Labels/Vorname')}">
<h:outputText value="#{mitarbeiter['vornamemita']}" />
</p:column>
<p:column headerText="#{ivy.cms.co('/Labels/Kostenstellennr')}">
<h:outputText value="#{mitarbeiter['nrkost']}" />
</p:column>
<p:column headerText="#{ivy.cms.co('/Labels/Kostenstelle')}">
<h:outputText value="#{mitarbeiter['beschreibungkost']}" />
</p:column>
<p:column headerText="#{ivy.cms.co('/Labels/email')}">
<h:outputText value="#{mitarbeiter['emailmita']}" />
</p:column>
</p:dataTable>
</pe:masterDetailLevel>
</pe:masterDetail>
</p:panel>
</p:layoutUnit>
</ui:define>
Теперь возникает исключение:
MenuItem must be inside a form element
viewId =/случаи/13ED0EF71F61E4D5/MitarbeiterdatenJSF.xhtml место = C: \ Users \ nweis.FREICON \ Desktop \ xivy5 \ WebApps \ плюща \ экземпляры \ 13ED0EF71F61E4D5 \ MitarbeiterdatenJSF.xhtml phaseId = RENDER_RESPONSE (6)
Вызванный: javax.faces.FacesException - MenuItem должен быть внутри форма элемента на org.primefaces.component.menu.BaseMenuRenderer.encodeMenuItem (BaseMenuRenderer.java:92)
Это действительно смущает меня, потому что в этом примере кода, предоставленной PrimefacesExtension-Team нет form- элемент окружающий pe: masterDetail see here. Может, кто-то может дать мне руку.
Спасибо за ваш ответ Олег. Это меня действительно смутило. Спасибо за разъяснения. –