Как работает PrimeFaces AjaxStatus?

Я пытаюсь понять индикатор PrimeFaces AjaxStatus.

Есть два аспекта - начало и завершение.

Кто-нибудь может сказать мне, что действительно определяет начало и завершение.

Я просто пытаюсь сделать изображение GIF индикатора видимым, когда пользователь нажимает кнопку и исчезает, когда он нажимает другую кнопку.

Если все, что я пытаюсь достичь, не имеет никакого смысла, объяснение будет действительно полезно.

Спасибо.

Ответ 1

Компонент ajaxStatus работает с глобально установленными компонентами. Это означает, что commandButton с атрибутом:

global="true"

вызовет процесс, который будет использовать компонент ajaxStatus (будет обновлять его вывод) Это говорит о том, что фаза начала ajaxStatus будет работать, когда вызывается метод слушателя и будет обновляться, когда будет достигнут "полный" статус, то есть, когда заканчивается жизненный цикл вызова.

Как я понимаю, это не позаботится об успехе или неудаче процесса. Для этих статусов вы имеете другие доступные грани: "ошибка" и "успех".

<p:ajaxStatus> 
    <f:facet name="prestart">
    <h:outputText value="Starting..." /> </f:facet>
    <f:facet name="error"> <h:outputText value="Error" />
    </f:facet>
    <f:facet name="success"> <h:outputText value="Success" />
    </f:facet>
    <f:facet name="default"> <h:outputText value="Idle" />
    </f:facet>
    <f:facet name="start"> <h:outputText value="Please Wait" />
    </f:facet>
    <f:facet name="complete"> <h:outputText value="Done" />
    </f:facet> 
</p:ajaxStatus>

Существует gj файл загрузки ajax в комплекте с PrimeFaces:

<h:graphicImage library="primefaces" name="jquery/ui/ui-anim_basic_16x16.gif" />