2015-10-19 4 views
1

В моем проекте я использую RichFaces.a4j: статус скрыть статус не работает

Когда я нажимаю кнопку a4j:commandButton, которая используется для сохранения страницы в формате pdf, на странице отображается a4j: статус, а затем открывается окно pdf с кнопками «Отмена» и «ОК». Я перехожу к кнопке Ok.

После этого загрузчик Ajax все еще отображается. Он не скрывается, хотя страница обновляется вручную.

Вот мой код:

<a4j:commandButton id="pdfButton" status="ajaxStatus" 
        image="#GeneralPageAttributes.pdfImage}" 
        title="#{platform.clickToPdfLabel}" 
        alt="ExportPDF" 
        onclick="selectedText(#{fileContentDiv})" 
        action="#{FileViewer.pdfBeforePerformAction}" 
        reRender="bottomOutputPanelId"/> 

<a4j:status id="ajaxStatus" onstart="#{rich:component('fileViewerProgressModalPanel')}.show();" 
      onstop="#{rich:component('fileViewerProgressModalPanel')}.hide();" /> 


<rich:modalPanel id="fileViewerProgressModalPanel" 
       shadowOpacity="0" 
       autosized="true" 
       style="background:none;border:none;" 
       moveable="true"> 
       <h:graphicImage url="#{GeneralPageAttributes.progressBarImage}"/>  
</rich:modalPanel> 

Любая идея, как скрыть a4j: состояние после того, как окно будет закрыто в формате PDF?

ответ

0

Попробуйте добавить имя атрибута = «ajaxStatus» в a4j: Статус:

<a4j:status id="ajaxStatus" name="ajaxStatus" onstart="#{rich:component('fileViewerProgressModalPanel')}.show();" 
     onstop="#{rich:component('fileViewerProgressModalPanel')}.hide();" /> 
1

Изменить атрибут id из a4j:status атрибуту name с тем же значением.

Одним из многочисленных бессмысленных и несовместимых изменений, сделанных между RichFaces 3 и 4, большинство из них не имеющие документы, в том, чтобы изменить крюк между status= и a4j:status от атрибута атрибута nameid.

См. this answer для длинного списка.