2016-06-23 28 views
0

私はJSF 2.2、PF 5.3、GlassFish 4.1.1を使用しています。primefaces blockUIとcomposition

ブロックアプリケーションを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> 

と、ここで私はこの1つ

<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

を顔あなたはどこにでもCCを使っている理由は、私が求めることができますか?どうしてあなたのブロックをフラグメントに入れ、ui:共通のレイアウトにインクルードするのですか? - 私は間違っている、コンポーネントサイトのコンポーネントは素晴らしいですが、なぜあなたはこのシナリオのために必要な理由は、レイアウトに一度だけ含まれている場合は、手動で複数のページを配置している場合は、CCが一般的です。 – VeenarM

+0

私はyuorフォルダ構造とファイル名などを見る必要があると思います – VeenarM

+0

こんにちはVeenarM、あなたは本当です、そして私の最初のアイデアでした。しかし、私は、コンポーネントの集中を失うのはちょっとばかげていると思います。たとえば、タグのいくつかの属性を再利用する場合などです。現時点では私はこの必要はありませんが、500ブロックのUIを配置し、それらのすべてでいくつかの変更を加える必要がある場合、私は多くの時間を失い、安全な操作ではありません。ビュー)、すべてのブロックUIをテストするのは非常に複雑です。 – Gavi

答えて

0

ここ総理で見つかったソリューションは、フォーラム

<myTag:blockUI block="@form:myTable" trigger="@(.triggerableFromBlockUI)"/> 
関連する問題