Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    114

    Struts:Validation.xml attributo page e forward di una pag.corretta

    Ciao a tutti
    sto usando il validator di struts. nel mio validation.xml ho questa definizione... (si tratta di una validazione per un semplice wizard in 2 pagine)

    <form name="pswRcvForm">
    <field property="email"
    depends="required,email,isEmailPresent"
    page="1">
    <arg0 key="cv.pswRcv.email"/>
    </field>
    <field property="response"
    depends="required,isEmailAndResponsePresent" page="2">
    <arg0 key="cv.pswRcv2.response"/>
    </field>

    il primo controllo viene fatto sulla 1a pagina. il 2o su entrambe.
    funziona tutto tranne il forward alla 2a pagina (non so come fare)

    se un utente infatti è alla 2a pag., fa un submit e c'è un errore questo viene rimandato alla 1a pagina in quanto l'attributo "input" della action rimanda proprio a questa.
    Vorrei che l'utente se è alla 2a pagina e c'è un errore di validazione sia rivisualizzata la 2a e non la 1a.

    Sapete come si può fare per risolvere questo problema?
    grazie a tutti
    ciao

  2. #2
    Utente di HTML.it L'avatar di blueice
    Registrato dal
    Feb 2001
    Messaggi
    121
    Si, lo sò ... ma nun te lo dico!

  3. #3
    Utente di HTML.it L'avatar di blueice
    Registrato dal
    Feb 2001
    Messaggi
    121
    codice:
    <action path="/CU020105InserimentoProdottoFase" type="it.inpdap.programManagement.action.CU020105InserimentoProdottoFaseAction" name="CU020105InserimentoProdottoFaseForm" scope="session" parameter="evento" input="/jsp/CU020105InserimentoProdottoFase.jsp" validate="true">
    <forward name="invia" path="/jsp/CU020105InserimentoProdottoFase.jsp" />
    <forward name="ripulisci" path="/jsp/CU020105InserimentoProdottoFase.jsp" />
    <forward name="chiudi" path="/jsp/CU020105ListaProdottiFasi.jsp" />
    <forward name="reload" path="/jsp/CU020105InserimentoProdottoFase.jsp" />
    </action>
    Nel tag action c'è un parametro che definisce la pagina di default che deve chiamare se non specificata alcun'altra in caso di errore. Il parametro è input. Se chiami la stessa da due pagine diverse avrai sempre la stessa pagina visualizzata in caso di errore.

    Fai due configurazioni diverse e sfrutta l'overriding.

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    114
    ciao. non ho capito bene cosa intendi cmq ho trovato la soluzione
    basta inserire un attributo nell'xml di validazione "page" che indica a quale pagina dovrà essere associata la validazione. poi nella jsp specifichi un campo hidden "page" per indicare che tipo di pagina è.
    Gestisce tutto struts con l'xml.... immaginavo ci fosse qualcosa.. è un prob. molto ricorrente per validazioni di wizard.
    ciao

  5. #5
    Utente di HTML.it
    Registrato dal
    Sep 2005
    Messaggi
    114
    scusa ho la risposta qui sopra.volevo dire
    che io ho disabilitato la validazione da xml e l'ho gestita nella Action facendo il savemessage e facendo il forward verso la pagina appropriata di errore vedendo quale metodo della dispatch action è stato chiamato.
    Tu come fai che non ho capito bene?

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 © 2024 vBulletin Solutions, Inc. All rights reserved.