0

複合コンポーネントを互いにネストするにはどうすればよいですか?

例として、次のように使用されるメニューとメニュー項目を表す 2 つのコンポジットがあります。

<html ... xmlns:test="http://java.sun.com/jsf/composite/test">
...
<test:menu>
    <test:menuItem value="#{someBean.someValue}"/>
    <test:menuItem value="#{someBean.someOtherValue}"/>
</test:menu>

私はそれを次のようにレンダリングしたいと思います:

<select>
    <option value="#{someBean.someValue}">#{someBean.someValue}</option>
    <option value="#{someBean.someOtherValue}">#{someBean.someOtherValue}</option>
</select>

menu.xhtml次のように実装されます。

<composite:implementation>
    <select>
        <!-- How to get the <test:menuItem> here? -->
    </select>
</composite:implementation>

menuItem.xhtml次のように実装されます。

<composite:implementation>
    <option value="#{cc.attrs.value}"> #{cc.attrs.value} </option>
</composite:implementation>

実装<test:menuItem>のコメントで特定された場所に を取得するにはどうすればよいですか?<test:menu>

4

1 に答える 1

2

次のように、 composite:insertChildrenタグを使用します。

<composite:implementation>
    <select>
        <composite:insertChildren/>
    </select>
</composite:implementation>
于 2013-05-29T12:18:02.567 に答える