Visualizzazione dei risultati da 1 a 4 su 4

Discussione: logic iterate

  1. #1

    logic iterate

    salve a tutti,
    sto provando con il tag logic, in pratica (so come si utilizza) mi chiedevo se fosse possibile ciclare su + proprietà di un bean form. Mi spiego meglio,
    ho un form bean struts nel quale ho dichiarato e definito tre array di stringhe

    codice:
    public etc etc.nomebean etc. etc.{
      string[] tipo 
      string[] dataDa
      string[] dataA
    }
    dovrei ciclare su uno qualsiasi degli array verificando che nn sia vuoto, ad esempio tipo

    nella jsp scrivo:
    codice:
    <logic:iterate id="tipo" property="tipo" name="nomebean" type="java.lang.String">
    qui vorrei recuperare i valori dei tre array ed inserirli in <html:text>
    
    <html:text name="nomebean" property='tipo' styleClass="DSAGRW_INPUT_TEXT" size="7" onkeyup="return composeDate(this,7);" maxlength="7"/>
    
    <html:text name="nomebean" property='dataA' styleClass="DSAGRW_INPUT_TEXT" size="7" onkeyup="return composeDate(this,7);" maxlength="7"/>
    
    <html:text name="nomebean" property='dataDa' styleClass="DSAGRW_INPUT_TEXT" size="7" onkeyup="return composeDate(this,7);" maxlength="7"/>
    
    </logic:iterate>

    MI STAMPA NELLE TEXT GLI INDIRIZZI DI MEMORIA :-(

    S.O.S.
    SCJP 96%

    Sono io signore che non ti perdono,io non merito punizioni, io sono potentissimo e ora che ho visto il tuo volto merito di stare in un cielo alto più alto del tuo perché non capendo chi è l’uomo hai dimostrato di essermi inferiore,tu servirai me. Da oggi mi chiamerò Satan che significa l’Avversario.

  2. #2
    c'è nessuno in casaaaaaa????
    SCJP 96%

    Sono io signore che non ti perdono,io non merito punizioni, io sono potentissimo e ora che ho visto il tuo volto merito di stare in un cielo alto più alto del tuo perché non capendo chi è l’uomo hai dimostrato di essermi inferiore,tu servirai me. Da oggi mi chiamerò Satan che significa l’Avversario.

  3. #3
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,328
    Mi sono documentato e non credo che la cosa sia proprio così semplice.
    Da quello che ho capito il tag <logic:iterate> funziona né più, né meno come il <c:forEach> di JSTL.

    Dalla documentazione (qui: http://struts.apache.org/1.0.2/struts-logic.html), c'è un esempio che ne spiega il funzionamento:

    So, if you wish to iterate over the values of a Hashtable, you would implement code like the following:
    codice:
    <logic:iterate id="element" name="myhashtable">
    Next element is <bean:write name="element" property="value"/>
    </logic:iterate>
    Da qui io vedo una Collection (una Hashmap) contenente tanti bean. All'interno del corpo di <logic:iterate> si itera per tutta la Collection, stampando il valore della proprietà "value" del i-esimo bean.

    Tu, da quello che vedo, stai capovolgendo questa logica: hai un bean (non una Collection) e vorresti iterare su tutti i valori delle varie Collection restituite da diverse property di quel bean... Non credo, quindi, che quel tag ti possa tornare utile... credo vada gestito a mano. Poi, magari, Struts mette a disposizione qualcosa di più sofisticato, ma non conosco Struts.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  4. #4
    grazie per la risposta.
    beh effettivamente è un pò particolare come gestione ma mi sono ritrovato questa implementazione un pò personalizzata e nn mi andava di riscrivere tutto.
    il problema è che se gli do il mio primo array di stringhe itera su quello e me lo stampa correttamente solo che non posso dargli in pasto gli altri, credevo che avrei potuto dargli tipo il primo con un indice e sfruttare l'indice per gli altri array.

    ty cmq
    SCJP 96%

    Sono io signore che non ti perdono,io non merito punizioni, io sono potentissimo e ora che ho visto il tuo volto merito di stare in un cielo alto più alto del tuo perché non capendo chi è l’uomo hai dimostrato di essermi inferiore,tu servirai me. Da oggi mi chiamerò Satan che significa l’Avversario.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.