2012-10-21 67 views
0

我试图在forEach循环中呈现DisplayTag表。表达式${paquete.listaProductoPaquete}是单项列表;但是当我尝试这个,我得到一个空表:DisplayTag在forEach标记中不起作用

<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> 

任何想法,为什么这ISN”工作?当我在循环外尝试标签时,任何事情都会正常进行。

回答

0

尝试改变 <display:table name="paquete.listaProductoPaquete" ...

+0

这是我尝试的第一件事,它不起作用:S –

0

请保证您使用displayTag与EL的支持。在你的DisplayTag jar文件中,你应该有displayTag-el.tld文件。

如果列表有正确的数据,您应该看到下面的代码表:我只是从displayTable标记中删除了DisplayColumn和排序属性。

<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>