Foreach

3 respostas
V

Boa tarde!

Sou iniciante em JSP e gostaria de saber como utilizar um foreach para escrever na tela valores resultantes de um ResultSet que vem de um procedimento de dentro de Bean.

Ex.:

//meu procedumento public ResultSet ListaGrupos(){ //BD.BuscaGrupos tb retorna um resultSet return BD.BuscaGrupos(); }

Se tiverem um exemplo agradeço.

José

3 Respostas

E
<c:forEach var=“nome_qualquer” items="${campo_que_vc_esta_enviado}">

<c:out value="${nome_qualquer}"/><br>

</c:forEach>

ou “${nome_qualquer.getNome()}”

V

Tentei fazer o seguinte, mas ta dando erro:

//Meu prodimento que busca a descrição dos produtos public ArrayList listaProduto2&#40;&#41; throws SQLException&#123; ArrayList lista = new ArrayList&#40;&#41;; ResultSet res = this.aprodutosDb.buscaListaProdutos&#40;this.aprodutosMd.getCodigo&#40;&#41;&#41;; while&#40;res.next&#40;&#41;&#41;&#123; produtosMd produtos = new produtosMd&#40;&#41;; produtos.setDesc&#40;res.getString&#40;3&#41;&#41;; lista.add&#40;produtos&#41;; &#125; return lista; &#125;

/////

//Meu foreach &lt;%@page contentType=&quot;text/html&quot;%&gt; &lt;%@page pageEncoding=&quot;UTF-8&quot;%&gt; &lt;html&gt; &lt;body&gt; &lt;jsp&#58;useBean id=&quot;listas&quot; class=&quot;br.com.helpdesk.produtos.produtosCt&quot;/&gt; &lt;table border=&quot;1&quot;&gt; &lt;c&#58;forEach items=&quot;prods&quot; var=&quot;$&#123;listas.listaProduto2&#125;&quot; &gt; &lt;tr&gt; &lt;td&gt; &lt;c&#58;out value=&quot;$&#123;prods.desc&#125;&quot; /&gt; &lt;/td&gt; &lt;/tr&gt; &lt;/c&#58;forEach&gt; &lt;/table&gt; &lt;/body&gt; &lt;/html&gt;

mas meu jsp retorna uma excessao, dis que não encontra o listas.listaProduto2.
Como preencho o parametro var do foreach, de acordo com o meu procedimento acima?

José

E
  • Muda o trecho do teu codigo para isso !!!
public Collection listaProduto2&#40;&#41; throws SQLException&#123;        
        ArrayList lista = new ArrayList&#40;&#41;; 
        ResultSet res = this.aprodutosDb.buscaListaProdutos&#40;this.aprodutosMd.getCodigo&#40;&#41;&#41;; 
        while&#40;res.next&#40;&#41;&#41;&#123; 
            produtosMd produtos = new produtosMd&#40;&#41;; 
            produtos.setDesc&#40;res.getString&#40;3&#41;&#41;; 
            lista.add&#40;produtos&#41;; 
        &#125; 
           return  lista; 
    &#125;
No Servlet !!!!!
Collection colecao = listaProduto2&#40;&#41;;
                 request.setAttribute&#40;"colecao" , colecao&#41;;
No jsp !!!!
&lt;c&#58;forEach var="nome_qualquer"  items="$&#123;colecao&#125;"&gt; 
                  &lt;c&#58;out value="$&#123;colecao.&#40;campo_que_vc_quer&#41;&#125;"/&gt;&lt;br&gt; 
&lt;/c&#58;forEach&gt;

Assim funciona !!

  • ha…vc importou as tags do EL ou jstl para poder utilizar estas tags ??

  • So funciona se ela tiverem dentro do seu projeto !!!

Criado 28 de abril de 2006
Ultima resposta 28 de abr. de 2006
Respostas 3
Participantes 2