0

forEachループ内にDisplayTagテーブルをレンダリングしようとしています。式${paquete.listaProductoPaquete}は1つのアイテムのリストです。しかし、これを試してみると、空のテーブルが表示されます。

<c:forEach var="paquete"
    items="${consultaConsumosWrapper.listadoPaqueteConsumo}">
    <tr>
        <td><display:table
                name="${paquete.listaProductoPaquete}" export="false"
                id="producto" style="width:100%" sort="list"
                defaultsort="1" class="grilla">
                <display:column sortable="false"
                    titleKey="header.consultaDatos.producto">
                    ${producto.producto}
                </display:column>
            </display:table> 
            </td>
    </tr>
</c:forEach>

これを試してみると、期待どおりにリスト上の単一のアイテムの情報が得られます。

<c:forEach var="paquete"
    items="${consultaConsumosWrapper.listadoPaqueteConsumo}">
    <tr>
        <td>
            <c:forEach var="producto"
                items="${paquete.listaProductoPaquete}">
                ${producto.producto}
            </c:forEach></td>
    </tr>
</c:forEach>

これが機能しない理由はありますか?ループの外でタグを試してみると、何でも正常になります。

4

2 に答える 2

0

EL サポート付きの displayTag を使用していることを確認してください。DisplayTag jar ファイルには、displayTag-el.tld ファイルが必要です。

List に正しいデータがある場合は、次のコードの表が表示されます。 displayTable タグから DisplayColumn および sort 属性を削除しました。

<c:forEach var="paquete"
    items="${consultaConsumosWrapper.listadoPaqueteConsumo}">
    <tr>
        <td><display:table
                name="${paquete.listaProductoPaquete}" export="false"
                style="width:100%" class="grilla">                    
            </display:table> 
         </td>
    </tr>
</c:forEach>
于 2012-11-05T16:10:30.353 に答える
0

に変更してみてください <display:table name="paquete.listaProductoPaquete" ...

于 2012-10-21T22:17:14.587 に答える