0

私は以下のコードを持っています:

<h:panelGrid id="formDatatable">
            <p:dataTable var="Resource" value="#{resource.listResourceForDataTable}">  
                <p:subTable var="access" value="#{resource.listResourceForSubTable}">
                    <f:facet name="header">
                        #{Resource.firstname} #{Resource.lastName}
                    </f:facet>
                    <p:column> 
                        #{access.skillLevel}
                    </p:column> 
                    <p:column>  
                        #{access.skillName}
                    </p:column>

                </p:subTable>
            </p:dataTable>  
        </h:panelGrid>

DataTable の値: Resource のリスト (文字列と Map を持つ複雑なオブジェクト)

サブテーブルの値: 2 つのフィールドだけを持つリソースのリスト: ---> skillLevel (文字列) と skillName (文字列)。

結果は(スキルのレベル/スキルの名前)です:

http://www.gilawhost.com/images/dywyipz9.png

ご覧のとおり、サブテーブルのリスト内のすべての要素で「ヘッダー」を埋めます。「albert first」(Resource) は Java (Skill) を学習済みで、levelOfSkill に 2 つあるため、私が望んでいるわけではありません。彼は他のスキルを持っていません。

テーブルに入れたい:

最初にアルバート: 2 - Java

マイケル・ジャクソン: 2 - ジー; 3 - php

トム・ホークス: 2 - php; 4 - ジャバ

しかし、私は毎回すべてのスキルを各ヘッダーに持っています。どうすればデータを「分離」できますか? DataTable と SubTable がこの仕事をするだろうと思いました。

4

1 に答える 1