p:commandLink не вызывает p:blockUI

Я использую PrimeFaces. Вот код:

<h:form>    
    <p:dataTable...>
        <p:column...>
            <p:commandLink id="featuresLinkId"...>
        </p:column>
    </p:dataTable>
</h:form>

<p:blockUI block=":smForm" trigger="featuresLinkId">
    <p:graphicImage alt="loader image" value="/images/loader.gif"/> 
</p:blockUI>

Когда страница загружается, я вижу следующую ошибку:

javax.servlet.ServletException: 
Cannot find component with identifier "featuresLinkId" in view.

Похоже на commandLink не может быть использован для запуска blockUI по такому сценарию. В чем может быть проблема?

2 ответа

Решение

Потому что он не найдет этот компонент, потому что он внутри формы /datatable.

Внести изменения как

1-

<h:form id="formId">

2-

<p:dataTable id="tbl">

3-

<p:blockUI block=":smForm" trigger=":formId:tbl:featuresLinkId">

Попробуйте выше.

В Primefaces 3.5 есть ошибка. Я думаю, см.: Как ссылаться на p:commandLink в p:dataTable из триггера p:blockUI?

Вы можете попробовать использовать JQuery BlockUI http://www.malsup.com/jquery/block/

Другие вопросы по тегам