Tenho um formulário para geração de relatórios.
Como foi necessário usar métodos que forçavam o browser a fazer o download dos mesmos, eu só pude usar o h:commandButton (nâo funciona com a4j:commandButton).
Eu queria que ao clicar no botão de gerar relatório aparecesse um modalPanel de “carregando”. Eu consigo chamar o mesmo, mas não consigo fecha-lo após a geração do relatorio (caixa de download do browser).
Alguém pode me ajudar?
Meu código:
parte do xhtml de geração de relatorios…
<a4j:region id="regionGerarRelatorio" renderRegionOnly="false">
<h:commandButton id="btGerarRelatorio" value="Gerar Relatório"
action="#{academicoAction.geraRelatorio}"
style="width: 150px;"
reRenderAfterComplete="formRelatorios"
onclick="Richfaces.showModalPanel('painelCarregando')">
<f:setPropertyActionListener value="#{org.jboss.seam.document.documentStore.newId()}"
target="#{academicoAction.docId}"/>
</h:commandButton>
</a4j:region>
<h:panelGroup>
<rich:modalPanel id="painelCarregando" autosized="true"
ajaxRendered="true" width="200">
<f:facet name="controls">
<h:panelGroup>
<h:graphicImage value="#{recursos.IMAGEM_FECHAR}"
id="fecharformRemoverItem" styleClass="hidelink" />
<rich:componentControl for="painelCarregando"
attachTo="fecharformRemoverItem" operation="hide"
event="onclick" />
</h:panelGroup>
</f:facet>
<center>
<h:graphicImage value="#{recursos.IMAGEM_CARREGANDO}" />
<rich:spacer width="15" />
<h:outputText value="Gerando Relatório..."/>
</center>
</rich:modalPanel>
</h:panelGroup>