12. Esempio 09B – Convalida del modello
L'applicazione seguente è una variante di quella precedente. In precedenza, per l'azione A:
- il file delle regole di validazione si chiamava A-validation.xml
- il file dei messaggi di errore di validazione era denominato A.properties
Qui, per l'azione A del modello M:
- il file delle regole di convalida si chiama M-validation.xml
- il file dei messaggi di errore di convalida si chiama M.properties
- Il file A-validation.xml esiste ancora, ma il suo contenuto reindirizza le regole di validazione al file M-validation.xml.
Queste sono le uniche modifiche che apporteremo alla versione precedente.
Il progetto NetBeans è il seguente:
![]() |
- in [1], l'azione [FormInt] e il relativo file di validazione
- in [2], il suo modello [FormIntModel], il file di validazione per questo modello e i messaggi associati a questo modello.
Tutto il resto è identico alla versione precedente.
Il file [FormInt-validation.xml] è il seguente:
<!--
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//
EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
-->
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.2//
EN" "http://localhost:8084/exemple-09B/example/xwork-validator-1.0.2.dtd">
<validators>
<field name="model" >
<field-validator type="visitor">
<param name="appendPrefix">false</param>
<message/>
</field-validator>
</field>
</validators>
Non tenteremo di spiegare il contenuto di questo file. Lo prenderemo per quello che è, tenendo presente il suo scopo: delegare le regole di validazione al modello. Potresti chiederti a cosa serva. Infatti, il modello, le sue regole di validazione e i suoi messaggi potrebbero già esistere ed essere utilizzati da diverse azioni. Piuttosto che ripetere le stesse regole di validazione e gli stessi messaggi per diverse azioni, è meglio delegare queste funzionalità al modello.
Il file [FormIntModel-validation.xml] è identico al file [FormInt-validation.xml] della versione precedente.
Il file [FormIntModel.properties] è identico al file [FormInt.properties] della versione precedente.
I lettori sono invitati a provare questa nuova versione.
