Primefaces blockUI和组合

时间:2016-06-23 21:02:30

标签: jsf jsf-2 primefaces composite-component

我使用的是JSF 2.2,PF 5.3和GlassFish 4.1.1。

我正在尝试将blockUI内容集中在我的网络应用程序中。 这里是我的自定义blockUI的代码

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml"  
  xmlns:cc="http://xmlns.jcp.org/jsf/composite"
  xmlns:p="http://primefaces.org/ui">

<cc:interface>
    <cc:attribute name="block" type="java.lang.String"/>
    <cc:attribute name="trigger" type="java.lang.String"/>
</cc:interface>

<cc:implementation>
    <p:blockUI block="#{cc.attrs.block}" trigger="#{cc.attrs.trigger}">
        LOADING<br />
        <p:graphicImage library="images" name="ajax-loader.gif"/>
    </p:blockUI>
</cc:implementation>

这里是我尝试应用此代码的代码

<h:form>
...
...

<p:dataTable id="myTable">
  <p:column headerText="actions">
    <p:commandButton class="triggerableFromBlockUI" action="#{action1}"/>
    <p:commandButton class="triggerableFromBlockUI" action="#{action2}"/>
  </p:column>
</p:dataTable>

...
...
<myTag:blockUI block="myTable" trigger="@(.triggerableFromBlockUI)"/>
</h:form>

但我看到以下错误

Cannot find component for expression "myTable".

如果直接使用p:blockUI,则一切正常。你能救我吗?

1 个答案:

答案 0 :(得分:1)

这是Prime Faces论坛中的解决方案

<myTag:blockUI block="@form:myTable" trigger="@(.triggerableFromBlockUI)"/>