Jstl + hastable?

Tenho um servlet q realiza a consulta ao banco e monta uma hastable com o resultado,mas qdo tento utiliza a tag forEach do jstl não imprime nada.

. . .  
 <% hsServidor = (Hashtable)request.getAttribute("servidores");%>
 <c:forEach var="i" items="${hs}>}">
        <c:out value="${i}"/>
  </c:forEach>
. . .

Por que não consigo imprimir o resultado??

qual o erro q dá? O JSTL ta funcionando direitinho ai?

[quote=“marciomarc”]Tenho um servlet q realiza a consulta ao banco e monta uma hastable com o resultado,mas qdo tento utiliza a tag forEach do jstl não imprime nada.

. . .  
 <% hsServidor = (Hashtable)request.getAttribute("servidores");%>
 <c:forEach var="i" items="${hs}>}">
        <c:out value="${i}"/>
  </c:forEach>
. . .

Por que não consigo imprimir o resultado??[/quote]

Tem certeza que seu hashtable está vindo populado ?

:wink:

tente substituir por:

<c:forEach var="i" items="${servidores}>}"> <c:out value="${i}"/> </c:forEach>

se você tiver setado o atributo com um hashtable com elementos irá funcionar.

:okok:

O hashtable era preenchido em um servlet e colocado no objeto request,
request.setAttribute(“myhash”,temp), e enviado para uma jsp.Encontrei duas soluções,a primeira foi:

<jsp:useBean id=“lista” class=“java.util.ArrayList”>
<%
lista.add(“Um”);
lista.add(“Dois”);
lista.add(“teste”);
%>
</jsp:useBean>
<c:forEach items="${lista}" var=“valor” >
<c:out value="${valor}"/>
</c:forEach>

mas so funciona so o bean for inicializado,a segunda foi o que realmente funcionou como eu esperava:

<c:forEach var=“temp” items="${requestScope.myhash}">
<c:out value="${temp.key}"/>
</c:forEach>