Jsp + ArrayList + Struts

6 respostas
K

Pessoal, andei procurando pelo guj e não achei nada sobre o q eu estou precisando.
Eu estou trazendo para um jsp, um ArrayList, resultante de um sql entre duas tabelas, logo eu não tenho nenhum formbean relacionado com o resultado.Os arryas do ArrayList, são arrays de 4 posições do tipo Object.
Alguem sab como eu faço para pegar as propriedades destes arrays e coloca las na tabela do jsp?
Eu estou fazendo um iterate nesse ArrayList, mas nao consigo pegar os valores dos arrays q estão dentro do ArrayList.

Alguém poderia me ajudar :?:

6 Respostas

fabiozoroastro

Se o ArrayList é de object. Vc somente vai ter acesso no jsp, aos métodos padrões da classe Object. Caso vc precise pegar métodos específicos de outra classe, vc precisa primeiro fazer o cast desse array pra trabalhar com ele na sua jsp.

Espero ter ajudado.
Abraço.

K

Fábio,
eu tentei fazer um cast pra depois pegar uma posição do array q terá o valor que eu kero, dessa maneira:
<%=((ArrayList)ret)[0]%>

mas nao funcionou, a exceção lançada diz que o ArrayList nao pode resolver pq o tipo esperado eh um array e eu tb importei o java.util.* no inicio do jsp.

Eu estou fazendo da maneira errada :?:

L

guenta ai que eu vou procurar aqui um exemplo que fiz de arraylist sem bean, melhor, um arraylist dentro do outro, formando perfeitamente um resultset, ja posto aqui…

L

Pronto… esse exemplo imprime na tela um arraylist dentro do outro, onda cada elemento do arraylist externo, contém n elementos de um outro arraylist interno.

&lt;table border=1 align="center"&gt;
	&lt;logic:present name="resultList"&gt;
		&lt;logic:iterate id="linha" name="resultList"&gt;
			&lt;tr&gt;
				&lt;logic:iterate id="campo" name="linha"&gt;
					&lt;c:if test="${campo!=null}"&gt;
						&lt;td&gt;&lt;c:out value="${campo}"/&gt;&lt;/td&gt;
					&lt;/c:if&gt;
					&lt;c:if test="${campo==null}"&gt;
						&lt;td&gt;&nbsp;&lt;/td&gt;
					&lt;/c:if&gt;
				&lt;/logic:iterate&gt;
			&lt;/tr&gt;
		&lt;/logic:iterate&gt;
	&lt;/logic:present&gt;
&lt;/table&gt;

pronto, assim funciona com certeza, no luga desse c:if tem outra propriedade melhor para se usar do jstl, nao lembro qual agora, eh q tem tipo um else… mas isso ai ja te da uma luz

K

obrigada leandro, vou fazer aqui qq coisa volto a postar dúvidas!

:smiley:

K

Bom, não consegui acessar o valor desta maneira, entao fiz assim mesmo:

<%=((Object[])ret)[1]%>

mas agora a minha dúvida eh a seguinte, preciso fazer um link com um td desses mas como q eu faço para passar um parametro pra uma action jah que esse parametro eh variável de acordo com cada array lido?

estou fazendo assim e nao sei como passar o parametro q eh o valor do array

<%=(((Object[])ret)[2])%>

como devo passar o valor de <%=(((Object[])ret)[2])%> como parametro?

Desde já obrigada.

Criado 16 de maio de 2007
Ultima resposta 17 de mai. de 2007
Respostas 6
Participantes 3