matheusPJ 11 de jul. de 2005
qual o erro q dá? O JSTL ta funcionando direitinho ai?
Guilherme_MelloPJ 11 de jul. de 2005
“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.
. . .
& lt ; % hsServidor = ( Hashtable ) request . getAttribute ( "servidores" ); %& gt ;
& lt ; c : forEach var = "i" items = "${hs}>}" & gt ;
& lt ; c : out value = "${i}" /& gt ;
& lt ; / c : forEach & gt ;
. . .
Por que não consigo imprimir o resultado??
Tem certeza que seu hashtable está vindo populado ?
marcossousaPJ 12 de jul. de 2005
& lt ; % hsServidor = ( Hashtable ) request . getAttribute ( "servidores" ); %& gt ;
& lt ; c : forEach var = "i" items = "${hs}>}" & gt ;
& lt ; c : out value = "${i}" /& gt ;
& lt ; / c : forEach & gt ;
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:
marciomarcPJ 12 de jul. de 2005
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>