Heim >Java >javaLernprogramm >Wie geht Struts2 mit Konvertierungs- und Validierungsfehlern bei der Formularverarbeitung um?

Wie geht Struts2 mit Konvertierungs- und Validierungsfehlern bei der Formularverarbeitung um?

Barbara Streisand
Barbara StreisandOriginal
2024-12-18 22:34:11598Durchsuche

How Does Struts2 Handle Conversion and Validation Errors in Form Processing?

Verarbeitung von Eingabeergebnissen in Struts2

Konvertierungs- und Validierungsfehler im INPUT-Ergebnis

Struts2 verwaltet automatisch Konvertierungs- und Validierungsfehler, die während der Formularverarbeitung auftreten. Wenn ein Fehler auftritt, wird ein INPUT-Ergebnis zurückgegeben, anstatt eine Ausnahme auszulösen. Dadurch können Benutzer Eingabefehler korrigieren, ohne den Anwendungsfluss zu unterbrechen.

Konvertierungsfehler

Parameters Interceptor übernimmt die Konvertierung von Formularparametern in die entsprechenden Datentypen (z. B. String). zu Ganzzahl). Wenn die Konvertierung fehlschlägt, wird der ConversionErrors-Map des ActionContext ein Feldfehler hinzugefügt.

Validierungsfehler

Validation Interceptor führt für die Aktion definierte Validierungsregeln aus. Wenn ein Validierungskriterium fehlschlägt, werden Feldfehler zur fieldErrors-Map des ActionContext hinzugefügt.

Workflow der Fehlerbehandlung

Nach der Konvertierung und Validierung prüft der Workflow Interceptor, ob Feldfehler vorhanden sind. Wenn Fehler gefunden werden, wird ein INPUT-Ergebnis zurückgegeben. Dieses Ergebnis umfasst automatisch Fehlermeldungen und die vom Benutzer übermittelten Originalwerte, um sicherzustellen, dass der Benutzer die Fehler anzeigen und seine Eingaben korrigieren kann.

Konfiguration

Um die automatische Fehlerbehandlung zu aktivieren, stellen Sie sicher, dass die Folgende Interceptoren sind in der richtigen Reihenfolge im Custom Stack enthalten:

  • Params Interceptor
  • ConversionError Interceptor
  • Validation Interceptor
  • Workflow Interceptor

Warum Zahlen als Null angezeigt werden

Wenn ein Benutzer ein alphabetisches Zeichen in ein Formularfeld eingibt, das als Ganzzahl definiert ist, gibt das Framework beim Abrufen des Werts Null zurück. Dies liegt daran, dass die Getter-Methode den Standardwert für eine Ganzzahl (0) zurückgibt, da sie keinen String in ein Int-Feld setzen kann.

Ausnahmebehandlung

Struts2 löst keine Ausnahme für die Konvertierung oder aus Validierungsfehler, da sie als Eingabefehler gelten. Stattdessen gibt es ein INPUT-Ergebnis zurück und fügt der Feldfehlerzuordnung Fehlermeldungen hinzu, die der Benutzer bearbeiten kann.

Das obige ist der detaillierte Inhalt vonWie geht Struts2 mit Konvertierungs- und Validierungsfehlern bei der Formularverarbeitung um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn