Problemas ao popular uma grid

0 respostas
ajaxjsfprimefacesjava
C

Bom dia,

Prezados amigos,

Estou com um problema em que preciso popular um p:dataTable, sendo que preciso carregar ao clicar em uma tab(Documentos), eu consigo carregar a lista no back, mas no front não é carregada, somente mostra minha p:dataTable carregada se eu trocar de aba e voltar para a aba de Documentos.

Poderiam me ajudar ?

equipamento_tab

<div class="container">
			<p:tabView style="width:100%" styleClass="m-t-20">
				<p:tab id="tvGerais" title="Dados Gerais">
					<div class="ui-g">
						<ui:include
							src="/pages/secured/equipamento/include/equipamentoDetalheContent.xhtml" />
					</div>
				</p:tab>
				<p:tab id="tv4" title="Transferência" disabled="true">
					<div class="ui-g">
						<h3>Transferência</h3>
					</div>
				</p:tab>
				<p:tab id="tv5" title="Fluxo de Baixa" disabled="true">
					<div class="ui-g">
						<h3>Fluxo de Baixa</h3>
					</div>
				</p:tab>
				<p:tab id="tv6" title="Dados da Baixa" disabled="true">
					<div class="ui-g">
						<h3>Dados da Baixa</h3>
					</div>
				</p:tab>
				<p:tab id="tv7" title="Revelação / Depreciação" disabled="true">
					<div class="ui-g">
						<h3>Reavaliação / Depreciação Gerencial</h3>
					</div>
				</p:tab>
				
				<p:ajax event="tabChange" listener="#{equipamentoController.listaArquivos(equipamentoPropioformController.currentEquipamento.codigo , 'COM_04', 'tv11')}" update="@all" />
				<p:tab id="tv11" title="Documentos">
					<div id="documentoConteudo" class="ui-g">
						<ui:include
							src="/pages/secured/equipamento/documentoEquipamento_list.xhtml" />
					</div>
				</p:tab>
@NavigableObject

private List arquivoList;

public void listaArquivos(String codigoEquipamento, String tipoDocumento, String tabId) {
if(tabId.equals("tv11")){
		arquivoList = this.equipamentoArquivoService.listarArquivo(codigoEquipamento, tipoDocumento);
		//session.setAttribute("arquivoList", arquivoList);
		qtdArquivos = (arquivoList == null ? 0 : arquivoList.size());
		session.setAttribute("qtdArquivos", qtdArquivos);

documentoEquipamento_list

<h:form id="form" prependId="false">

			<h3 class="titulo">#{labels['menu.secao.cabecalho.documentos']}</h3>
			<p class="subtitulo">#{equipamentoController.qtdArquivos}
				arquivo(s)</p>

			<p:growl id="messages" showDetail="true" />

			<div class="row">
				<div class="card">
					<div class="toolbar barra-de-ferramentas">
						<p:commandButton value="#{labels['label.novo']}"
							styleClass="button-link" icon="fa fa-plus-circle"
							actionListener="#{documentoController.chamarPaginaNovo('')}" 
							onstart="PF('statusDialog').show()" oncomplete="PF('statusDialog').hide()"/>

						<p:commandButton value="#{labels['acoes.visualizar']}"
							disabled="true" styleClass="button-link" icon="fa fa-eye" 
							onstart="PF('statusDialog').show()" oncomplete="PF('statusDialog').hide()"/>

						<p:selectBooleanButton id="btModoMiniaturas"
							styleClass="botao-sem-texto" onLabel="" offLabel=""
							onIcon="fa fa-th" offIcon="fa fa-th" style="margin-right: 10px;"
							onchange="$('#btModoTabela').removeClass('ui-state-active'); $('#btModoMiniaturas').addClass('ui-state-active');$('#tabView li:nth-child(2)').click()" 
							onstart="PF('statusDialog').show()" oncomplete="PF('statusDialog').hide()"/>
						<p:selectBooleanButton id="btModoTabela"
							styleClass="botao-sem-texto ui-state-active" onLabel=""
							offLabel="" onIcon="fa fa-list" offIcon="fa fa-list"
							onchange="$('#btModoMiniaturas').removeClass('ui-state-active'); $('#btModoTabela').addClass('ui-state-active'); $('#tabView li:nth-child(1)').click()" 
							onstart="PF('statusDialog').show()" oncomplete="PF('statusDialog').hide()"/>

						<h:form styleClass="caixa-de-busca-interna">
							<ui:include src="/pages/secured/equipamento/include/documento/templateDocumentoEquipamento_filter.xhtml">
								<ui:param name="TipoDocumento" value="" />
							</ui:include>
						</h:form>
					</div>
				</div>
			</div>

			<ui:include src="/pages/secured/equipamento/include/documento/templateDocumentoEquipamento_list.xhtml" />

		</h:form>

	</section>

templateDocumentoEquipamento_list

<p:tabView id="tabView" width="100%"
			styleClass="tabview-com-abas-ocultas">

			<p:tab width="100%">
				<p:dataTable id="arquivosDataTable"
					value="#{equipamentoController.arquivoList}" var="arquivo"
					emptyMessage="Nenhum arquivo encontrado." 
					width="100%" class="ui-datatable"
					rows="10" paginator="true"
					paginatorTemplate="{CurrentPageReport} {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
					rowsPerPageTemplate="10,25,50" sortMode="single"
					paginatorPosition="bottom"
					currentPageReportTemplate="#{labels['label.paginacao.de']} {startRecord} #{labels['label.paginacao.ate']} {endRecord} #{labels['label.paginacao.total']} {totalRecords}">
					
					
					<p:column headerText="#{labels['documentos.tabela.cabecalho.descricao']}" width="30%">
							<!--<h:commandLink styleClass="link"
						  action="#{documentoController.chamarView(arquivo.numDocumento, arquivo.nomeArquivo, arquivo.tipoDocumento)}"
							onstart="PF('statusDialog').show()" oncomplete="PF('statusDialog').hide()"></h:commandLink>-->
							<h:outputText value="#{arquivo.descRelatorio}" />
						
					</p:column>
					
					<p:column headerText="#{labels['documentos.tabela.cabecalho.dataUpload']}" width="15%" >
						<h:outputText value="#{arquivo.getDataFormatada(arquivo.dataUpload)}" />
					</p:column>
					
					<p:column headerText="#{labels['documentos.tabela.cabecalho.usuario']}" width="15%">
						<h:outputText value="#{arquivo.usuario}" />
					</p:column>
				</p:dataTable>
			</p:tab>

			<p:tab>
				<div style="background-color: #fefefe; min-height: 500px">
					<h:form>
						<c:forEach items="#{equipamentoController.arquivoList}"
							var="documento">
							<div class="miniatura">
								<iframe class="preview-do-documento"
									src="#{request.contextPath}/components/miniatura-pdf.html"
									data-url="http://localhost:8080/rhe-web/rest/rhe/documento?codigo=#{documento.numDocumento}&amp;nomeArquivo=#{documento.nomeArquivo}"></iframe>
								<p class="titulo">#{documento.nomeArquivo}</p>
								<p class="subtitulo">#{documento.getDataFormatada(documento.dataUpload)}
									por #{documento.usuario}</p>
							</div>

						</c:forEach>
					</h:form>
				</div>
			</p:tab>

		</p:tabView>

	</div>
Criado 13 de setembro de 2018
Respostas 0
Participantes 1