Pergunta
Existe uma maneira de usar algo como EL adiada em JSP 2.0 / J2EE 1.4? A idéia é passar por um teste para um arquivo de tag e tê-lo exibir um item em uma lista (ou não) com base no valor da expressão. Basicamente, eu gostaria de fazer algo parecido com isto:
JSP:
<x:myTag items="${myCollection}" test="${item.visible}"/>
myTag.tag
<c:forEach var="item" items="${collection}">
<c:if test="${test}">
${item}
</c:if>
</c:forEach>
Atualizando o nosso recipiente JSP não é uma opção. Alguma idéia?
Update:
Eu tentei fazer isso com fragmentos JSP, mas o EL no fragmento foi avaliada uma vez no JSP, em vez de uma vez por iteração na tag.
Solução
Você deve ser capaz de fazer isso com jsp fragmentos . Eu acredito que não vai ser a solução extremamente elegante que você gostaria de receber, mas permite a execução da expressão a ser adiada até dentro da tag.
Edit: Você poderia verificar o variável com o "nome dado por" configuração.
(I prontamente admitir que eu fiz algo como o que você está tentando fazer cerca de 2 anos. Eu não tenho tocado desde então. Eu lembro que eu pensei que era muito arcane)