Просто используйте атрибут update
так же, как и для всех других компонентов ajax PrimeFaces.
<p:fileUpload update="@form" />
Я, конечно, предполагаю, что вы установили btnRendered
на true
внутри handleFileUpload
метода.
Обратите внимание, что вы не можете установить для него идентификатор самой кнопки, просто потому, что она отсутствует в дереве HTML DOM, когда btnRendered
по умолчанию равен false
. Именно JavaScript выполняет обновление в дереве HTML DOM на основе полученного ответа Ajax. Если вы хотите обновить только кнопку, а не форму, поместите ее в другой компонент, который всегда присутствует в дереве HTML DOM:
<h:panelGroup id="btnValidar">
<p:commandButton rendered="#{fileUploadController.btnRendered}" />
</h:panelGroup>
и обновите его следующим образом
<p:fileUpload update="btnValidar" />
Смотри также: