我使用的是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,则一切正常。你能救我吗?
答案 0 :(得分:1)
这是Prime Faces论坛中的解决方案
<myTag:blockUI block="@form:myTable" trigger="@(.triggerableFromBlockUI)"/>