我的页面上有一条警告:
Can not update component without a attached renderer. Component class: "class org.primefaces.component.menuitem.UIMenuItem"
它工作得很完美,但我仍然收到此警告信息。我所拥有的是一个应该根据所选行显示给用户的上下文菜单的表,呈现一些菜单。
这是我的表:
<p:dataTable id="protocoloTable" var="protocolo" value="#{juridicaBean.protocolsLazy}" paginator="true" lazy="true" selectionMode="single"
selection="#{protocoloBean.selectedEntity}">
<p:ajax event="contextMenu" update=":registration_form:protocoloTableMenu" oncomplete="protoMenu.show(currentEvent);" process="protocoloTable" />
这是菜单:
<p:contextMenu id="protocoloTableMenu" for="protocoloTable" widgetVar="protoMenu">
<p:menuitem value="Visualizar protocolo" icon="icon-ticket icon-large" actionListener="#{ocorrenciaBean.loadViewOcorrencias(protocoloBean.selectedEntity)}"
process="@this" update="view_proto_details" oncomplete="PF('viewProtocolDlg').show()"></p:menuitem>
<p:menuitem value="Nova ocorrência" icon="icon-plus icon-large" actionListener="#{ocorrenciaBean.newOcorrencia(protocoloBean.selectedEntity)}" oncomplete="PF('ocorrenciaDlg').show()" process="@this" update="ocorrencia_details" rendered="#{protocoloBean.selectedEntity.status eq 'PENDENTE'}"></p:menuitem>
<p:menuitem value="Reabrir protocolo" icon="icon-unlock-alt icon-large" rendered="#{protocoloBean.selectedEntity.status eq 'CONCLUIDO'}"
actionListener="#{protocoloBean.openProtocol()}" update="protocoloTable" process="@this"></p:menuitem>
PF4
答案 0 :(得分:0)
我知道这个问题已经过时了,但是我很好奇您是否直接从代码中使用UIMenuItem?
如果是,您是否尝试使用MenuModel - MenuItem
(DefaultMenuModel / DynamicMenuModel-DefaultMenuItem)?
此外,您还应考虑对您在contextMenu中使用的每个项目使用ID