Struts, <logic:iterate e Bean

2 respostas
M

Olá.

Estou estudando Struts montando um projetinho bem básico, mas surgiu uma dúvida, que fazendo apenas com Servlet e JSP seria fácil de se resolver.

Na minha Action eu busco várias informações no banco de dados, pego essas informações no ResultSet, jogo para dentro do Bean (por exemplo Clientes) e jogo esse ben para um ArrayList.
No final de todos os Beans preenchidos e dentro do ArrayList, eu jogo esse ArrayList para a Session e chamo e faço um forward para o arquivo .JSP.
Até aqui está funcionando OK, mas ae que surge a dúvida.
Como irei mostrar todos esses dados do ArrayList usando apenas as taglibs do Struts? <logic:iterate e <bean:… ???
Eu fiz usando scriptlet em JSP e funcionou normal, mas não quero misturar código JSP e sim tentar usar as taglibs.
Até fazer o <logic:iterate é tranquilo (eu acho), mas como eu vou fazer um Cast do meu Objeto no ArrayList para o meu Objeto BEAN para poder mostrar as informações?
No JSP ficou mais ou menos assim:

ArrayList lista = &#40;ArrayList&#41; request.getSession&#40;&#41;.getAttribute&#40;"lista"&#41;;
for &#40;int i = 0; i &lt; lista.size&#40;&#41;; i++&#41; &#123; //Aqui pretendo usar o logic&#58;iterate
  Clientes clientes = &#40;Clientes&#41; lista.get&#40;i&#41;; //como faço esse Cast?
  .......
&#125;

Alguem poderia me ajudar fazendo favor?

Obrigado[/code]

2 Respostas

caiofilipini

O cast é feito automaticamente quando você usa <logic:iterate>. :wink:

Jair_Rillo_Junior

Como o Caio já comentou, o <logic:iterate já faz esse Cast, então a única coisa que você tem que fazer é usar o <logic:iterate para percorrer todos os dados da sua arrayList e depois um <bean:write para mostrar esses dados, mais ou menos como no exemplo abaixo

&lt;logic&#58;iterate id="myColletion" name="lista"&gt;
    &lt;p&gt;&lt;bean&#58;write name="myColletion" property="seuCampo"/&gt;&lt;/p&gt;
  &lt;/logic&#58;iterate&gt;
Criado 15 de setembro de 2004
Ultima resposta 15 de set. de 2004
Respostas 2
Participantes 3