Galera, tô precisando de uma ajuda aqui
Tenho uma lista de chaves do Map (na variável ciclos). E nessa lista eu pego a chave, e com a chave pego o valor correspondente no Map. Até ai beleza, fiz os foreach necessários, mas na hora de passar a chave, dá erro. Ele não entende o comando…coloquei abaixo o que tentei.
Se eu coloco o valor hard code, ele traz normal!
Segue código:
<c:forEach var="relatorio" items="${lista}" varStatus="loop">
<tr class="${((loop.index % 2) == 0) ? 'even' : 'odd'}">
<td align="center">${relatorio.codProduto}</td>
<c:forEach var="campanha" items="${ciclos}">
<td align="center">${relatorio.valorPorCiclo[${campanha.ciclo}]}</td>
</c:forEach>
</tr>
</c:forEach>
Tentei assim também e também não funcionou 
<c:forEach var="relatorio" items="${lista}" varStatus="loop">
<tr class="${((loop.index % 2) == 0) ? 'even' : 'odd'}">
<td align="center">${relatorio.codProduto}</td>
<c:forEach var="campanha" items="${ciclos}">
<c:set var="i" value = "${campanha.ciclo}" />
<td align="center">${relatorio.valorPorCiclo[${i}]}</td>
</c:forEach>
</tr>
</c:forEach>
O Map declarado no java está assim Map<Long,Integer> (Tive que colocar Long, porque o JSTL se perde se coloco Integer) :?
Enfim, alguém já passou por isso? Podem me ajudar?
Valeu