我正在使用JSF 2.2,PF 5.3和Glassfish 4.1.1。
我正在尝试将BlockUI内容集中在我的Web应用程序中。在这里,我的自定义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都在起作用。你能帮我吗?
这里的解决方案在Prime Faces论坛中找到的解决方案
<myTag:blockUI block="@form:myTable" trigger="@(.triggerableFromBlockUI)"/>