忍者ブログ
[66] [65] [64] [63] [62] [61] [60] [59] [58] [57] [56]

DATE : 2017/06/29 (Thu)
×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。


DATE : 2006/05/26 (Fri)

前回の記事

コンポーネント ID の表現方法

コンポーネント ID を特定する方法として、相対表現と絶対表現があります。

コンポーネント ID の相対表現

特定のコンポーネントを中心とした表現方法です。

例えば、次の例で、「form1」の f:form から「table」の h:dataTable を指定するとします。

...
<f:view>

    <f:form id="form1">
        <h:dataTable id="table" ...>
        ...
        </h:dataTable>
    </f:form>

</f:view>
...

相対表現では、「form1:table」と表現します。

コンポーネント ID の絶対表現

コンポーネントツリーのルートにあるコンポーネントを中心とした表現方法です。JSF では、f:view 要素がコンポーネントツリーのルートにあたります。

絶対表現を行うには、「:」を表現の先頭に付けます。

つまり、上の例の絶対表現は「:form1:table」となります。

ここで、前回の最後に示した例に戻ります。

...
<f:view>

    <f:form target="_blank">
        <h:dataTable id="items" ...>
            ...
        </h:dataTable>
    </f:form>

    <f:form>
        <t:dataScroller for="items" ...>
            ...
        </t:dataScroller>
    </f:form>

</f:view>
...

t:dataScroller 要素の for 属性「items」は相対表現です。そのため、上の例では2つ目の f:form 要素内でコンポーネント ID が items の要素を探していることになります。

そこで、絶対表現に書き換えます。ファイルパスであれば、親ディレクトリを示す表記方法がありますが、コンポーネント ID にはそのような方法はないようです(調査不足かもしれません)。

まず、コンポーネント ID を表記しやすいように、1つめの f:form 要素に id 属性を付けます。

...
<f:view>

    <f:form id="table_form" target="_blank">
        <h:dataTable id="items" ...>
            ...
        </h:dataTable>
    </f:form>

    <f:form>
        <t:dataScroller for="items" ...>
            ...
        </t:dataScroller>
    </f:form>

</f:view>
...

「table_form」という ID を付けました。

そして、 h:dataTable のコンポーネント ID を絶対表現で表します。絶対表現は、「:table_form:items」となります。

この絶対表現を t:dataScroller の for 属性にすれば、 t:dataScroller が h:dataTable を参照できるようになります。

...
<f:view>

    <f:form id="table_form" target="_blank">
        <h:dataTable id="items" ...>
            ...
        </h:dataTable>
    </f:form>

    <f:form>
        <t:dataScroller for=":table_form:items" ...>
            ...
        </t:dataScroller>
    </f:form>

</f:view>
...
(了)
PR
●この記事にコメントする
お名前
タイトル
文字色
メールアドレス
URL
コメント
パスワード
●この記事へのトラックバック
この記事にトラックバックする:
忍者ブログ [PR]
ブログ内検索
最近の状況
リンク
カレンダー
05 2017/06 07
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
使用許諾
最新コメント
(08/15)
(05/04)
(03/06)
(03/04)
(09/25)
最新トラックバック
T/O
(11/05)
ブログ内検索
最近の状況
リンク
カレンダー
05 2017/06 07
S M T W T F S
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
使用許諾
最新コメント
(08/15)
(05/04)
(03/06)
(03/04)
(09/25)
最新トラックバック
T/O
(11/05)