/ / Struts 2 Klarstellung erforderlich - Validierung, Struts2

Struts 2 Klarstellung benötigt - Validierung, struts2

Ich frage mich, wie die Validierung von Struts 2 durchgeführt wird, ohne Validate = true in Struts config xml anzugeben. Kannst du mir irgendjemand den Fluss der Struts 2-Validierung unter Verwendung des Validierungsframeworks erklären?

Antworten:

1 für die Antwort № 1

Die Validierung erfolgt durch eine Kombination aus Interceptors "Validierung" und "Workflow". In der Struts 2-Konfigurationsdatei gibt es keine Einrichtung zum "Überprüfen", da dies nicht erforderlich ist.


0 für die Antwort № 2

Struts Core verfügt über ein Validierungsframework, das die Anwendung beim Ausführen der Regeln zur Durchführung der Validierung unterstützt, bevor die Aktionsmethode ausgeführt wird.

Struts 2 Validierungsablauf

Die Aktionsklasse arbeitet als Domänendaten und sieht so ausnach den Eigenschaften in seiner Action Mapping-Datei und durchsucht die Feldprüfer in derDateiname-Validation.xml, und alle Prüfer funktionieren gemäß dem in validation.xml definierten Feld. Wenn Daten nicht übereinstimmen, wird die Nachricht aus der validation.xml-Datei abgerufen und dem Benutzer angezeigt.

Beispiel Employee-validation.xml:

<validators>
<field name="name">
<field-validator type="required">
<message>
The name is required.
</message>
</field-validator>
</field>

<field name="age">
<field-validator type="int">
<param name="min">29</param>
<param name="max">64</param>
<message>
Age must be in between 28 and 65
</message>
</field-validator>
</field>
</validators>

Dies ist die Beispielvalidierungsdatei für EmployeeModell und Anfrage werden für den Namen und das Alter der Eigenschaften geprüft. Wenn das Namensfeld leer gelassen wird, wird die Fehlermeldung als "Der Name ist erforderlich" über dem Namenseingabefeld angezeigt. Wenn das eingegebene Alter außerhalb des Gültigkeitsbereichs von 29-64 liegt, wird ein Fehler angezeigt, da "Alter muss zwischen 28 und 65 "über dem Alterseingabefeld.