在我看来,我有一个手风琴面板组件,在其中有两个数据表组件。
<p:accordionPanel id="ap-horas"
value="#{autorizacaoHoraExtraMB.trabalhadores}" var="trabalhador"
dynamic="true" cache="true" activeIndex="#{autorizacaoHoraExtraMB.indexAtual}"
multiple="true">
<p:ajax event="tabChange" listener="#{autorizacaoHoraExtraMB.filtrarHorasExtras(trabalhador)}"
update="ap-horas"/>
它遵循两个数据表的代码
<p:dataTable id="dt-anexos" rowIndexVar="rowIndex"
value="#{autorizacaoHoraExtraMB.trabalhadorEmManutencao.documentoDigitalVoList}"
var="docDigital" selectionMode="single" selection="#{autorizacaoHoraExtraMB.anexoSelecionado}"
emptyMessage="Nenhum anexo encontrado"
rowKey="#{docDigital.id}">
<f:facet name="header">
Anexos
</f:facet>
<p:column headerText="Nome">
<h:outputText value="#{docDigital.nome}"/>
</p:column>
<p:column>
<p:commandLink
actionListener="#{autorizacaoHoraExtraMB.deletarDocumentoDigital(docDigital)}"
update="form-conteudo:ap-horas, @([id$=messages-content])"
value="Excluir">
<p:confirm header="Confirmação"
message="Você deseja realmente excluir esse anexo?"
icon="ui-icon-alert"/>
</p:commandLink>
</p:column>
</p:dataTable>
<p:confirmDialog global="true" showEffect="fade" hideEffect="fade">
<p:commandButton value="Sim" type="button" styleClass="ui-confirmdialog-yes"
icon="ui-icon-check"/>
<p:commandButton value="Não" type="button" styleClass="ui-confirmdialog-no"
icon="ui-icon-close"/>
</p:confirmDialog>
第二个dataTable:
<p:dataTable id="dt-vinculoEventos" widgetVar="wv-vinculoEventos"
value="#{autorizacaoHoraExtraMB.trabalhadorEmManutencao.pontoEventoVoList}"
var="pontoEventoAnexo" rowKey="#{pontoEventoAnexo.codPonto}"
selection="#{autorizacaoHoraExtraMB.eventosSelecionados}">
<f:facet name="header">
Eventos para vincular com o anexo
</f:facet>
<p:column selectionMode="multiple" style="text-align: center;"/>
<p:column headerText="Data" style="text-align: center;">
<h:outputText value="#{pontoEventoAnexo.data}">
<f:convertDateTime dateStyle="medium"/>
</h:outputText>
</p:column>
<p:column headerText="Evento">
<h:outputText
value="#{pontoEventoAnexo.codEvento.concat(' - ').concat(pontoEventoAnexo.nomeEvento)}"/>
</p:column>
<p:column headerText="Quantidade" style="text-align: center;">
<h:outputText value="#{pontoEventoAnexo.quantidade}"/>
</p:column>
<p:column headerText="Status" style="text-align: center;">
<h:outputText value="#{pontoEventoAnexo.status.descricao}"/>
</p:column>
<p:column headerText="Anexado Doc.?" style="text-align: center;">
<h:outputText value="#{pontoEventoAnexo.anexadoDocumento ? 'Sim' : 'Não'}"/>
</p:column>
</p:dataTable>
在第一个数据表的情况下,发生的问题如下: 当我单击数据表上方的命令按钮时
<p:commandButton id="cb-vincularAnexos"
value="Vincular Anexo Selecionado" icon="fa fa-paperclip"
actionListener="#{autorizacaoHoraExtraMB.vincularAnexos}"
update="ap-horas"/>
变量anexoSelecionado始终设置为null,我不知道为什么,我进行了一次测试,将数据表放在手风琴面板的外面,这样就可以正常设置该值。
有人知道我如何解决这个问题吗?