Newsgroup: it.comp.java
Titolo: Struts: Array di Array ...

Ho un bean  matrice (nn mi chiedete perchč) popolato dal DB.
dove le righe sono i record e le colonne i campi del DB.
Il bean viene inviato alla pagina jsp in una iterazione.
logic:iterate id="JSBean" name="lista" type="it.xxxx.xxxx.xxx.beanDb"
<bean:write name="lista" property="vett">
Naturalmente la pagina si riempie di
[[Ljava.lang.String;@661532, [Ljava.lang.String;@1f9aeda,
[Ljava.lang.String;@1469a69, [Ljava.lang.String;@437dcb,
[Ljava.lang.String;@f7cbcc, [Ljava.lang.String;@64f6fe,
[Ljava.lang.String;@93c5e7, [Ljava.lang.String;@1a5e4e4,
[Ljava.lang.String;@563cc2, [Ljava.lang.String;@1af0fcf,
[Ljava.lang.String;@37153d, [Ljava.lang.String;@
come faccio a rappresentare correttamente la struttura?
Cioč come faccio a rapresentare l'elemento vett[0][5] ad esempio?



Ogni tanto molla e apri al
<%
ciao Nicola
 
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

 <%
eheheh!
ho appena iniziato con struts e devo già mollare e ritornare al caro vecchio
runtime?
Possibile che questi  strutsiani non hanno pensato a qualcosa?

 Cioè come faccio a rapresentare l'elemento vett[0][5] ad esempio?
Non puoi direttamente con i tags struts.
L'unica soluzione e' ritornare a <% ... %>
-- 
Giambo - Occhio al filtro antispam _e_ alla whitelist !

 L'unica soluzione e' ritornare a <% ... %>
...alla fine ho mollato
VAI col <%    %>

 ha scritto nel messaggio 
news:d578c4$fcf$1...@balena.cs.interbusiness.it...

PEr l'array di array non vedo perché mettersi a usare le scriptlet, la 
soluzione propostati andava benissimo.
PEr quanto riguarda accedere all'elemento [0][5] prova con <bean:write 
name="name" property="lista[0][5]"/> non mi ricordo se funziona.
Comunque, visto che sei alle prime armi con Struts, perché mai dovresti 
accedere in quel modo alla matrice?


Ho provato, in effetti stampa l'indirizzo di memoria, mentre con un array 
monodimensionale funziona come ci si aspetterebbe.
Credo che funzioni solo se lista[0] contiene un bean con una proprietą array 
e allora in quel caso potresti fare
<bean:write name="name" property="array1[0].array2[5]"/> 

 <bean:write name="name" property="array1[0].array2[5]"/>
 Per prendere l'iesimo elemento uso (nelle normali applicazioni)
lista.getVectorElement(x,y,"nullvalue") che è un metodo che restituisce
appunto l'elemento che mi serve.
Non riesco ad utilizzare il metodo del bean. Non capisco se sto facendo
confusione o il bean:write non fa altro che un toString() dell'elemento.


bean:write name="pippo" property="VectorElement[i]"/>
cerca un metodo getVectorElement() che restituisca un array, o una 
Collection e restituisce l'iesimo elemento.che quindi deve essere di tipo 
String.
i metodi get non possono avere parametri, se vuoi che siano utilizzati dal 
framework (non parlo necessariamente di Struts) per accedere a quella 
proprietą in lettura.
non sai cosa sono i bean per caso? 

> non sai cosa sono i bean per caso?
Si, si.....
Solo che ho riportato quel metodo perchè volevo illustrare come far
funzionare il bean nel tag Struts.
Scenario
Form di query--->>  Action --->> Classe che riempie il vettore con il result
set. Colonne=Campo Db  -- Righe=Intero record
--->> il bean viene messo nella request (chiamiamolo vett)
L'oggetto in questione ha un metodo (getVett()) che restituisce il vett che
è un array di array. Ogni elemento dell'array è un array di stringhe, ogni
stringa contiene il valore del campo del record.
Devo ovviamente iterare negli array per popolare una tabella della JSP.