O iterate � utilizado para objetos do tipo List,Collection, etc. voc� teria que ter no seu form um objeto do tipo List (por exemplo) e no seu action popular esse objeto. O property que eu me referi seria justamente o objeto do tipo List (produtosItens, adicionando nele uma classe com todos os campos da tabela, para ficar mais parecido com um pattern).

 

Atenciosamente,

 

Alex Pitacci Sim�es

Sun Certified Programmer for Java 2 Platform

Sun Certified Web Component Developer for J2EE Platform

 

-----Mensagem original-----
De: Airton [mailto:[EMAIL PROTECTED]
Enviada em: quarta-feira, 26 de mar�o de 2003 09:25
Para: [EMAIL PROTECTED]
Assunto: Re: [enterprise-list] Struts: problemas com iterate no jsp

 

[repostas no texto] + algumas considera��es conceituais:

 

Usei um FormBean que, n�o s� armazena as informa��es do meu formul�rio, como tamb�m tem properties que armazenar�o dados provenientes do SGBD, populado de dentro da classe Action. Entendi na literatura que posso ter um s� FormBean para n formul�rios, bem como um para cada...

 

Seria o caso de ter feito um FormBean para o formul�rio (que vai tratar entradas, erros, devolver valores ao formul�rio etc) e um bean (comum - n�o extendendo ActionForm) para armazenar os dados da consulta ao banco, que depois seriam apresentados no jsp?

 

----- Original Message -----

From: Alex

To: [EMAIL PROTECTED]

Sent: Tuesday, March 25, 2003 5:43 PM

Subject: RES: [enterprise-list] Struts: problemas com iterate no jsp

 

Algumas perguntas antes de reponder?

 

O nome do seu form no struts-config � dadosMap?

 

Sim:

 

<form-bean

    name="dadosMap" type="MapBeans.DadosMapBean" />

 

 

Porque voc� n�o colocou o property que voc� quer no Iterate? E no notEmpty?

No exemplo que estava acompanhando, o property n�o aparecia no iterate.

Me pareceu razo�vel, j� que informo o property dentro do iterate, no tag <bean:write ... />.

Colocando o property no iterate, teria que escrever um para cada property? Algo assim?:

 

<logic:iterate name="dadosMap" id="dado" property="descr">
<tr>
    <td><bean:write name="dado" property="descr"/></td>
</tr>
</logic:iterate>

<logic:iterate name="dadosMap" id="dado" property="conta">
<tr>
    <td><bean:write name="dado" property="conta"/></td>
</tr>
</logic:iterate>

<logic:iterate name="dadosMap" id="dado" property="item">
<tr>
    <td><bean:write name="dado" property="item"/></td>
</tr>
</logic:iterate>

 

Voc� est� usando struts-nested? N�o.

 

 

Atenciosamente,

 

Alex Pitacci Sim�es

Sun Certified Programmer for Java 2 Platform

Sun Certified Web Component Developer for J2EE Platform

 

-----Mensagem original-----
De: Airton [mailto:[EMAIL PROTECTED]
Enviada em: ter�a-feira, 25 de mar�o de 2003 16:01
Para: [EMAIL PROTECTED]
Assunto: [enterprise-list] Struts: problemas com iterate no jsp

 

Consegui o seguinte erro:

 

javax.servlet.ServletException: Cannot find bean dadosMap in any scope
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:471)
at org.apache.jsp.Dados$jsp._jspService(Dados$jsp.java:411)
.

.

. etc

 

quando tentava fazer um iterate num jsp, proveniente do bean "dadosMap" (mapeado no struts-config.xml). A p�gina � Dados.jsp, o que me fez pensar que o problema est� na forma como fiz o iterate e n�o na configura��o (struts-config.xml) ou no Action que 'popula' o bean. Segue trecho do arquivo Dados.jsp:

 

<logic:notEmpty name="dadosMap">
<logic:iterate name="dadosMap" id="dado">
<tr>
    <td><bean:write name="dado" property="descr"/></td>
    <td><bean:write name="dado" property="conta"/></td>
    <td><bean:write name="dado" property="item"/></td>
</tr>
</logic:iterate>
</logic:notEmpty>

 

Algu�m pode me ajudar ?

 

Obrigado.

 

Responder a